Detailed Description
In order to make the objects, features and advantages of the present invention more obvious and understandable, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is obvious that the embodiments described below are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Fig. 1 shows an implementation process of a business self-service handling method provided by an embodiment of the present invention, where the method includes steps S101 to S104. The specific realization principle of each step is as follows:
s101: receiving user information input by a user, and determining the information type of the user information.
In the embodiment of the invention, the user information input by the receiving user comprises identity information and reservation information. And determining the type of the user information as a mobile phone number, an identity card number or a transaction card number according to the user information. Optionally, the user information may be manually input by the user through a numeric keypad, and a card such as an identification card or a transaction card may be placed in a designated area of the self-service terminal. And identifying the card at the designated area by the self-service terminal. When the card is detected in the designated area of the self-service terminal, the detected card is scanned, the text information of the card is read and extracted, and then the number sequence in the text information is obtained.
Further, after receiving user information input by a user, performing identity authentication on the user according to the user information, and verifying whether the user is a reserved user. The information sent by the user when the user makes a reservation on the network in advance through an intelligent terminal such as a mobile phone and a computer comprises the address of the self-service terminal and the reservation time. The user can make an appointment through one of the mobile phone number, the identity card number or the transaction card number. And after the authentication of the user is passed, lightening the screen to wait for the user operation. Specifically, the user information input by the user is compared with the user information sent when the user in the self-service terminal makes an appointment, and if the comparison is passed, the identity authentication is passed.
Optionally, after the user makes a reservation on the network successfully through the intelligent terminal, the self-service terminal sends a reservation code to the intelligent terminal of the user, wherein the reservation code is a random number generated according to the address of the self-service terminal and the reservation time, and is unique and effective at one time. The user inputs the reservation code while inputting the user information, thereby avoiding the malicious reservation of the user information by others and improving the safety and the effectiveness of the reservation.
As an embodiment of the present invention, as shown in fig. 2, the S101 specifically includes:
a1: user information input by a user is received.
A2: and performing text recognition based on the user information to acquire text information.
A3: a digit sequence in the text information is extracted and a digit number of the digit sequence is determined.
A4: and determining the information type corresponding to the user information containing the digital sequence according to the digital digits and a preset digit information mapping table.
In the embodiment of the invention, the information type corresponding to the user information containing the digital sequence is determined according to the preset digit information mapping table and the digital sequence extracted from the user information. The digit information mapping table comprises information types corresponding to digits and digits.
Specifically, as an embodiment of the present invention, fig. 3 shows a specific implementation flow of step a4 of the self-service transaction method provided in the embodiment of the present invention, which is detailed as follows:
a41: and pre-establishing a digit information mapping table, wherein the digit information mapping table stores the mapping relation between the digit digits of the digit sequence and the user information type.
A42: and if the digit number of the digit sequence is the first number, the information type of the user information containing the digit sequence is a mobile phone number.
A43: and if the number digits of the number sequence are the second number digits, the information type of the user information containing the number sequence is a transaction card number.
A44: and if the digit number of the digit sequence is a third digit number, calculating the digit sequence according to a preset algorithm, and determining whether the information type of the user information containing the digit sequence is a transaction card number or an identity card number according to the calculation result.
Wherein the number digit indicates the number of digits present in the digit sequence. For example, the first number of bits corresponds to 11 bits, the second number of bits corresponds to 19 bits, and the third number of bits corresponds to 18 bits. Illustratively, the user information containing the first number digit sequence corresponds to a mobile phone number, the user information containing the second number digit sequence corresponds to a transaction card number, the user information containing the third number digit sequence corresponds to a preset algorithm, and whether the user information corresponding to the third number digit sequence is the transaction card number or the identity card number can be determined according to the preset algorithm. For example, a 11 digit sequence corresponds to the mobile phone number, a 13-to-17 digit and 19 digit sequence corresponds to the transaction card number, and an 18 digit sequence corresponds to the predetermined algorithm. The 11 digit sequence corresponds to the mobile phone number, the 13-17 digit and 19 digit sequences correspond to the transaction card number, and the 18 digit sequence corresponds to the preset algorithm. And when the data digit of the digital sequence is 18 digits, calculating the digital sequence according to a preset algorithm, and determining whether the digital sequence corresponds to a transaction card number or an identity card number according to a calculation result.
In the embodiment of the present invention, if the third number of digits is specifically N digits, where N is a positive integer, the first N-1 digits of the number sequence are calculated by using a preset algorithm, the calculation result is compared with the nth digit of the number sequence, and if the calculation result is the same as the nth digit of the number sequence, it is determined that the number sequence is a transaction card number, that is, the number sequence corresponding to the third number of digits is a transaction card number.
Specifically, the third number of digits is N digits, N is a positive integer, and the numerical sequence is represented as follows: x is the number of1x2x3…xi…xNWherein i is a positive integer, xiRepresenting the number corresponding to the ith bit in the sequence of numbersThe numerical sequence is calculated as follows:
if the value of Q calculated according to the formula is corresponding to the number x corresponding to the Nth bit in the number sequenceNIf the number sequence is the same as the transaction card number, the number sequence is judged to be the transaction card number. And if not, analyzing the digital sequence and judging whether the digital sequence meets the identification number generation rule or not. And if so, judging that the information type of the user information corresponding to the digital sequence is the identity card number.
Further, if the third number of bits is N bits, where N is a positive integer, the first N-1 bits of the number sequence are multiplied by a specified coefficient, respectively. Summing the results of multiplying 1-N-1 bits by different specified coefficients respectively, dividing the summed result by a specified divisor to obtain a remainder, and searching a number corresponding to the remainder according to a remainder comparison table. And if the corresponding number is found to be the same as the corresponding Nth digit of the number sequence corresponding to the third number of digits according to remainder comparison, determining that the number sequence corresponding to the third number of digits is the identity card number. In this embodiment, the designated coefficients to be multiplied by the numbers at the respective bits in the number series may be the same or different.
Illustratively, N is 18. Multiplying the first 17 digits of the digit sequence corresponding to the third number of digits by a specified coefficient respectively, wherein the 1 st digit is multiplied by 7; multiplying the 2 nd digit by 9; multiplying the 3 rd digit by 10; multiplying the 4 th digit by 5; multiplying the 5 th digit by 8; multiplying the 6 th digit by 4; multiplying the 7 th digit by 2; multiplying the 8 th digit by 1; multiplying the 9 th digit by 6; multiplying the 10 th digit by 3; multiplying the 11 th digit by 7; multiplying the 12 th digit by 9; multiplying the 13 th digit by 10; multiplying the 14 th digit by 5; multiplying the 15 th digit by 8; multiplying the 16 th digit by 4; the 17 th digit of the identification number is multiplied by 2. Summing the results of multiplying the above 1-17 bits by different coefficients, respectively, and dividing the result of the summation by 11, thereby presenting 11 possibilities that the remainder is 0, the remainder is 1, the remainder is 2, the remainder is 3, the remainder is 4, the remainder is 5, the remainder is 6, the remainder is 7, the remainder is 8, the remainder is 9, and the remainder is 10. And finally, looking up the number corresponding to the remainder according to the remainder comparison table. In the remainder comparison table, if the remainder is 0, the last number of the corresponding ID card is 1; if the remainder is 1, the number of the corresponding last ID card is 0; if the remainder is 2, the number of the corresponding last ID card is X; if the remainder is 3, the number of the corresponding last ID card is 9; if the remainder is 4, the number of the corresponding last ID card is 8; if the remainder is 5, the number of the corresponding last ID card is 7; if the remainder is 6, the number of the corresponding last ID card is 6; if the remainder is 7, the number of the corresponding last ID card is 5; if the remainder is 8, the number of the corresponding last ID card is 4; if the remainder is 9, the number of the corresponding last ID card is 3; if the remainder is 10, the number of the corresponding last ID card is 2. And if the corresponding number is found to be the same as the 18 th digit in the digit sequence according to the remainder comparison, determining that the digit sequence corresponding to the third digit is the identity card number.
The invention can verify the authenticity of the transaction card number or the identity card number while determining whether the information type of the user information is the transaction card number or the identity card number in real time, thereby improving the self-service handling efficiency.
Optionally, when the information type of the user information is a transaction card number, determining whether a card-issuing transaction mechanism of the transaction card number belongs to a preset transaction mechanism group, where the preset transaction mechanism group includes transaction mechanisms that support a user to jointly transact business.
S102: and acquiring the service type to be transacted by the user.
The service types to be transacted by the user comprise an account opening service and other services except the account opening service.
S103: and if the service type to be transacted is an account opening service, displaying a list of account opening transaction mechanism names according to the information type of the user information.
In the embodiment of the invention, the service is transacted for the user based on the information type of the user information and the service type to be transacted by the user. When the user inputs an account opening instruction, displaying an account opening transaction mechanism icon for reference of the user, entering an account opening interface of the transaction mechanism selected by the user, receiving user data information and handling account opening service.
As an embodiment of the present invention, fig. 4 shows a specific implementation flow of the service self-service handling method S103 provided by the embodiment of the present invention, which is detailed as follows:
b1: and if the information type of the user information is the identification card number, reading the biogenic-source information of the user according to the identification card number.
B2: and selecting the regional trading institutions positioned in the biogenic place from a preset trading institution group for recommendation display based on the biogenic place information.
B3: and if the information type of the user information is a mobile phone number, reading the attribution information of the mobile phone number.
B4: and selecting the trading mechanism located at the attribution from a preset trading mechanism group for recommendation display based on the attribution information.
In the embodiment of the invention, the attribution information is obtained according to the mobile phone number of the user, or the biographical information is obtained according to the identity card number of the user, and then the account opening transaction mechanism is recommended for the user based on the biographical information or the attribution information so that the user can use the account opening transaction mechanism conveniently after opening the account.
S104: and if the service type to be transacted by the user is other than the account opening service, connecting a transaction mechanism background corresponding to the user information according to the user information.
In the embodiment of the invention, other services except the account opening service comprise data modification, deposit and withdrawal transaction and the like, and the transaction mechanism background corresponding to the user information is connected according to the user information.
Optionally, in the embodiment of the present invention, the self-service terminal supports different transaction institutions, and a plurality of card slots are provided, when a transaction card is detected by the self-service terminal, a transaction institution group corresponding to the card slot in which the transaction card is detected is determined, and a transaction institution background corresponding to the transaction card is searched from the transaction institution group corresponding to the card slot according to the read transaction card information, so as to record or clear transaction data in a process of transacting business by a user in time. Illustratively, when a user wants to modify the binding information of the transaction card, the transaction mechanism background corresponding to the transaction card is searched from the transaction mechanism group corresponding to the card slot according to the card slot into which the transaction card is inserted, and when the user inputs the modified binding information of the transaction card, the transaction mechanism background corresponding to the transaction card directly acquires the modified binding information, so that the binding information of the transaction card is immediately updated.
As an embodiment of the present invention, step S105 is further included after step S103.
S105: when the user selects more than one transaction mechanism to open an account, the data required by the transaction mechanism opening the account selected by the user is collected and enters a comprehensive account opening interface, so that the user fills in account opening information to handle the opening of the account.
As an embodiment of the present invention, as shown in fig. 5, the step S105 includes
C1: an institution code is obtained for each of the user-selected transaction institutions.
C2: determining the type of data required by each transaction mechanism to open an account according to the transaction mechanism code
C3: the types of the data needed by more than one transaction mechanism selected by the user are collected, and the types of the data needed by the user to handle at least the opening account at the same time are integrated.
C4: and generating a data filling page according to the integration result for the user to input the data required by the account opening.
C5: after the data required for opening an account input by the user is acquired, the data required by each transaction mechanism is selected from the acquired data required for opening an account according to the mechanism code of the transaction mechanism selected by the user, and the data are respectively sent to the background of each transaction mechanism, so that the background of each transaction mechanism can handle the opening of the account.
Further, the self-service terminal acquires the data types required by each transaction mechanism from the background of the transaction mechanism supporting simultaneous account opening from the self-service terminal in advance, establishes a data comparison table according to the transaction mechanism codes of the transaction mechanisms and the data types required by account opening, stores the comparison table in the self-service terminal locally, and backs up the comparison table on the cloud intelligent device, so that when a user uses the self-service terminal to simultaneously handle multiple transaction mechanism accounts opening, the self-service terminal can locally inquire the data types required by the multiple transaction mechanism accounts opening at least and generate a data filling page, and therefore the handling speed is increased.
Illustratively, a user needs to transact an account opening of 1 and B, C transaction mechanisms simultaneously, the self-service terminal searches account opening data types needed by the three transaction mechanisms from a locally stored data comparison table according to mechanism codes of A, B, C three transaction mechanisms, for example, it is known from the data comparison table that the transaction mechanism a needs identity card information and an account opening person mobile phone number, the transaction mechanism B needs an identity card number, an account opening person mobile phone number and a contact address, the transaction mechanism C needs an identity card number, an account opening person mobile phone number, an emergency contact person and an emergency contact person mobile phone number, so that the statistics shows that the minimum data types needed by the user to transact the account opening simultaneously at this time include: the identification number, the account opening person mobile phone number, the contact address, the emergency contact person and the emergency contact person mobile phone number are used for filling in a data filling interface generated according to the minimum data types required by transacting the account opening at the same time, and after the data filled in by the user is obtained, the data required by A, B, C three transaction mechanisms are respectively sent to the backstage of A, B, C three transaction mechanisms according to a data comparison table for storage.
Optionally, the user is prompted to set the password after judging that the data meets the account opening requirement according to the data filled by the user, and when the user transacts the account opening of a plurality of transaction institutions at the same time, the password can be set uniformly or the passwords can be set respectively in sequence.
Optionally, before prompting the user to perform secret setting, connecting a public security system or cloud intelligent equipment to obtain a head portrait corresponding to the identity number through a user head portrait obtained by a camera of the self-service terminal according to the identity number in the data filled by the user; matching and comparing the head portrait acquired through the public security system or the cloud intelligent equipment with the head portrait of the user acquired through the camera of the self-service terminal, if the similarity is higher than a specified threshold value, considering that the matching is successful, confirming that the account is opened by the user, and further prompting the user to set the password. The personal account opening is confirmed to avoid the personal identity information being stolen and utilized by other people, and the safety of the transaction is improved. Preferably, the human body biological characteristics (such as fingerprints) of the user are acquired and compared with the human body biological characteristics (such as fingerprints) corresponding to the user identity card number stored in the cloud intelligent device, and whether the account opening user is the user is judged.
Optionally, in the embodiment of the present invention, when a user has a problem of transaction exception or no operation during a transaction process, an intelligent customer service is provided to solve the problem. The intelligent customer service system comprises a robot customer service system and a remote manual customer service system, wherein the robot customer service system can solve preset common problems.
Specifically, the user has transaction abnormity in the transaction process or does not operate the selectable robot customer service or the remote manual customer service to assist in solving the problem. When the manual customer service is selected, the current operation interface is called, the operation interface is sent to the remote service center, and the voice information sent by the remote service center is received, so that the user can receive the voice information of the manual customer of the remote service center to solve the abnormity, and the business handling is smoothly completed.
In the embodiment of the invention, before the user transacts the business, strict identity authentication is carried out, the safety of the transaction is improved, and the user is allowed to operate the self-service terminal after the user completes the identity authentication and passes the authentication. The method comprises the steps of receiving user information input by a user, determining the information type of the user information, obtaining the service type to be transacted by the user, transacting the service for the user based on the information type of the user information and the service type to be transacted by the user, displaying a list of names of transaction mechanisms capable of opening the account if the service type to be transacted is an account opening service, connecting transaction mechanism backgrounds corresponding to the user information according to the user information if the service type to be transacted by the user is other than the account opening service, supporting the user to transact the services of multiple transaction mechanisms across lines and regions on one self-service terminal, avoiding multiple rushing waves, saving time and money, completing account opening of the multiple transaction mechanisms simultaneously only by inputting data once by the user, and improving self-service transaction efficiency.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present invention.
Fig. 6 shows a block diagram of a self-service transaction device provided in the embodiment of the present application, and for convenience of description, only the parts related to the embodiment of the present application are shown.
Referring to fig. 6, the self-service transaction apparatus includes: information processing unit 61, service processing unit 62, first service unit 63, second service unit 64, wherein:
an information processing unit 61, configured to receive user information input by a user, and determine an information type of the user information;
a service processing unit 62, configured to obtain a type of a service to be handled by the user, and handle a service for the user based on an information type of the user information and the type of the service to be handled by the user;
a first service unit 63, configured to display a list of names of transaction institutions capable of opening an account if the service type to be handled is an account opening service;
and a second service unit 64, configured to connect the transaction mechanism background corresponding to the user information according to the user information if the service type to be handled by the user is a service other than the account opening service.
Optionally, the information processing unit 61 includes:
the information receiving module is used for receiving user information input by a user;
the text acquisition module is used for carrying out text recognition based on the user information to acquire text information;
the digit determining module is used for extracting a digit sequence in the text information and determining the digit number of the digit sequence;
and the information type determining module is used for determining the information type corresponding to the user information containing the digital sequence according to the digital digit and a preset digit information mapping table.
Optionally, the type determining module includes:
the mapping table establishing submodule is used for establishing a digit information mapping table in advance, and the digit information mapping table stores the mapping relation between the digit digits of the digit sequence and the user information type;
the first mapping submodule is used for determining that the information type of the user information containing the digital sequence is a mobile phone number if the digital digit of the digital sequence is a first number digit;
the second mapping submodule is used for determining the information type of the user information containing the digital sequence as a transaction card number if the digital digit of the digital sequence is a second digital digit;
and the third mapping submodule is used for calculating the digital sequence according to a preset algorithm if the digital digit of the digital sequence is a third quantity digit, and determining whether the information type of the user information containing the digital sequence is a transaction card number or an identity card number according to a calculation result.
Optionally, the third mapping sub-module is specifically configured to:
the third number of digits is specifically N-digits, N is a positive integer, and the numerical sequence is represented as follows: x is the number of1x2x3…xi…xNWherein i is a positive integer, xiRepresenting the number corresponding to the ith bit in the number sequence, and calculating the number sequence according to the following formula:
if the value of Q calculated according to the formula is corresponding to the number x corresponding to the Nth bit in the number sequenceNIf the number sequence is the same as the transaction card number, judging that the number sequence is the transaction card number;
if not, analyzing the digital sequence and judging whether the digital sequence meets the identification number generation rule or not;
and if so, judging that the information type of the user information corresponding to the digital sequence is the identity card number.
Optionally, the first service unit 63 includes:
the information recommendation module is used for selecting a trading mechanism corresponding to the user information to perform recommendation display according to the information type of the user information;
the first reading module is used for reading the biogenic source information of the user according to the identity card number if the information type of the user information is the identity card number;
the first recommending module is used for selecting regional trading institutions located in the biogenic place from a preset trading institution group to recommend and display based on the biogenic place information;
the second reading module is used for reading the attribution information of the mobile phone number if the user information is the information type of the mobile phone number;
and the second recommending module is used for selecting the trading mechanism located at the attribution from a preset trading mechanism group to recommend and display based on the attribution information.
Optionally, as shown in fig. 7, the self-service transaction apparatus further includes:
and the data integration unit is used for summarizing data required by the account opening of the transaction mechanism selected by the user and entering a comprehensive account opening interface when the user selects more than one transaction mechanism to open an account.
Optionally, the data integration unit includes:
the code acquisition module is used for acquiring the mechanism code of each transaction mechanism in the transaction mechanisms selected by the user;
the data requirement determining module is used for determining the type of data required by each transaction mechanism for opening an account according to the transaction mechanism codes;
the data integration module is used for summarizing the types of the data respectively required by more than one transaction mechanism selected by the user and integrating the types of the data required by the user for transacting at least the opening account at the same time;
the account opening interface generating module is used for generating a data filling page according to the integration result so that the user can input the data required by account opening;
and the account opening handling module is used for selecting the information required by each transaction mechanism from the acquired information required by opening an account according to the mechanism code of the transaction mechanism selected by the user after acquiring the information required by opening an account input by the user, and respectively sending the information to the background of each transaction mechanism so as to facilitate the background of each transaction mechanism to handle the account opening.
In the embodiment of the invention, the information type of the user information is determined by receiving the user information input by a user, the service type to be transacted by the user is obtained, if the service type to be transacted is an account opening service, a list of names of transaction mechanisms capable of opening the account is displayed according to the information type of the user information, if the service type to be transacted by the user is other services except the account opening service, the transaction mechanism background corresponding to the user information is connected according to the user information, and the user can transact the services of a plurality of transaction mechanisms across rows and regions on one self-service terminal, thereby avoiding a plurality of rushing waves, saving time and money and simultaneously improving the efficiency of self-service transaction.
Fig. 7 is a schematic diagram of an intelligent device according to an embodiment of the present invention. As shown in fig. 7, the smart device 7 of this embodiment includes: a processor 70, a memory 71 and a computer program 72, such as a business self-service program, stored in said memory 71 and operable on said processor 70. The processor 70, when executing the computer program 72, implements the steps in the various embodiments of the self-service transaction method described above, such as the steps 101-104 shown in fig. 1. Alternatively, the processor 70, when executing the computer program 72, implements the functions of the modules/units in the above-described device embodiments, such as the functions of the modules 61 to 64 shown in fig. 6.
Illustratively, the computer program 72 may be partitioned into one or more modules/units that are stored in the memory 71 and executed by the processor 70 to implement the present invention. The one or more modules/units may be a series of computer program instruction segments capable of performing specific functions, which are used to describe the execution of the computer program 72 in the smart device 7.
The intelligent device 7 may be a self-service transaction terminal. The smart device may include, but is not limited to, a processor 70, a memory 71. It will be appreciated by those skilled in the art that fig. 7 is merely an example of a smart device 7 and does not constitute a limitation of the smart device 7 and may include more or less components than those shown, or some components in combination, or different components, for example the smart device may also include input output devices, network access devices, buses, etc.
The Processor 70 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic device, discrete hardware component, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 71 may be an internal storage unit of the smart device 7, such as a hard disk or a memory of the smart device 7. The memory 71 may also be an external storage device of the Smart device 7, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like, provided on the Smart device 7. Further, the memory 71 may also include both an internal storage unit and an external storage device of the smart device 7. The memory 71 is used for storing the computer program and other programs and data required by the smart device. The memory 71 may also be used to temporarily store data that has been output or is to be output.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated modules/units, if implemented in the form of software functional units and sold or used as separate products, may be stored in a computer readable storage medium. Based on such understanding, all or part of the flow of the method according to the embodiments of the present invention may also be implemented by a computer program, which may be stored in a computer-readable storage medium, and when the computer program is executed by a processor, the steps of the method embodiments may be implemented. . Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution medium, and the like. It should be noted that the computer readable medium may contain content that is subject to appropriate increase or decrease as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer readable media does not include electrical carrier signals and telecommunications signals as is required by legislation and patent practice.
The above-mentioned embodiments are only used for illustrating the technical solutions of the present invention, and not for limiting the same; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present invention, and are intended to be included within the scope of the present invention.