Method of generating codes for animal marking
10108828 ยท 2018-10-23
Assignee
Inventors
Cpc classification
G06K7/10366
PHYSICS
A01K11/006
HUMAN NECESSITIES
International classification
G06Q90/00
PHYSICS
G06K7/14
PHYSICS
Abstract
A method of generating animal identification codes is described. A first and second number are selected, then each number is compared respectively against previously used first and previously used second numbers in a pool. Such comparing uses a computed distance based on how the numbers will be encoded and marked on an animal, such as a Hamming distance of printed symbologies. If the distance computed for either the first or second number is below a distance threshold, that number is discarded and another number is selected. When both numbers pass the distance test, they are added as a pair into the pool. Pairs from the pool may be encoded and marked on an animal. The encoding of the first number may generate a human-readable mark while a different encoding of the second number generates a machine-readable mark.
Claims
1. A method of marking animals comprising the following steps: (a) choosing a first number pair comprising a first H number and a first M number; (b) placing the first number pair into a set of available number pairs; (c) choosing a next number pair comprising a next H number and a next M number; (d) computing an H distance between the next H number and at least a subset of all H numbers in the set of available number pairs; (e) computing an M distance between the next M number and at least a subset of all M numbers in the set of available number pairs; (f) comparing the H distance computed against an H distance threshold; (g) comparing the M distance computed against an M distance threshold; (h) discarding the next number pair if the H number is in a set of used H numbers; (i) discarding the next number pair if either the H distance is less than the H distance threshold or the M distance is less than the M distance threshold; otherwise adding the next number pair to the set of available numbers; (j) repeating from step (c) until the size of the set of available number pairs is equal to or greater than a set size threshold; (k) selecting a selected number pair from the set of available number pairs; the selected number pair comprising a selected H number and a selected M number; (l) marking the selected H number using a human-readable encoding on a first animal; (m) marking the selected M number using a machine-readable encoding on the first animal; (n) placing the selected H number into the set of used H numbers; wherein the human-readable encoding and the machine-readable encoding are distinct; and wherein the H number and the M number are distinct.
2. The method of marking animals in claim 1 comprising this additional step, following step (n): (o) repeating from step (k) until a terminating condition is reached.
3. The method of marking animals in claim 1 wherein: the choosing in step (c) comprises choosing randomly.
4. The method of marking animals in claim 1 comprising the additional step: (p) decreasing either the H distance threshold or the M distance threshold or both, responsive to the size of the set of available number pairs.
5. The method of marking animals in claim 1 wherein: the size of the subset in steps (d) and (e) is the smaller of: (i) the number of available number pairs in the set of available numbers; and (ii) a number in the range of 5 to 100.
6. The method of marking animals in claim 1 wherein: the output of the human-readable encoding of step (l) comprises one or more digits wherein each digit consists of a combination of seven line segments; and the computing an H distance in step (d) comprises the sub-steps: (d1) selecting a number pair, from the at least a subset of the set of available number pairs, comprising an H and an M number; (d2) computing a Hamming distance between a first digit of the H number and a first digit of a H number; (d3) repeating step (d2) for each respective digit in the H number and H number; (d4) summing the Hamming distances from steps (d2) and (d3) to produce a Hamming sum; (d5) repeating steps (d1) through (d4) for each number pair H and M in the at least a subset of the set of number pairs; wherein a Hamming symbol set for the Hamming distance comprises the seven line segments; wherein the H distance comprises the minimum of the Hamming sums.
7. The method of marking animals in claim 1 wherein: the output of the machine-readable marking encoding of step (m) comprises a vine code comprising two or more leaves wherein each leaf of the vine code consists of a combination of V line segments; and the computing an M distance in step (e) comprises the sub-steps: (e1) selecting a number pair, from the at least a subset of the set of available number pairs, comprising an H and an M number; (e2) generating an output marking Mm from M using the machine readable marking encoding of above; generating an output marking Mm from M using the machine readable marking encoding of above; (e3) computing a Hamming distance between a first leaf of the Mm marking and a first leaf of the Mm marking; (e4) repeating step (e3) for each respective leaf in the Mm marking and the Mm marking; (e5) summing the Hamming distances from steps (e3) and (e4) to produce a Hamming sum; (e6) repeating steps (e1) through (e5) for each number pair H and M in the at least a subset of the set of number pairs; wherein a Hamming symbol set for the Hamming distance comprises the V line segments; wherein the M distance comprises the minimum of the Hamming sums.
8. The method of marking animals in claim 1 wherein: the animals are rodents.
9. The method of marking animals in claim 1 wherein: the animals have no additional placed markings other than the markings placed by steps (l) and (m).
10. A device for marking animals in a vivarium using the method of claim 1 comprising: a stored-program computer comprising software and memory adapted to execute the steps of claim 1 (a) through (k) and step (n); a marking machine adapted to perform the steps of claim 1 (l) and (m).
11. A system for marking animals in a vivarium wherein; the vivarium comprises animals marked by the method of claim 1 using the device of claim 10.
12. A method of marking objects comprising the following steps: (a) choosing a first number pair comprising a first H number and a first M number; (b) placing the first number pair into a set of available number pairs; (c) choosing a next number pair comprising a next H number and a next M number; (d) computing an H distance between the next H number and at least a subset of all H numbers in the set of available number pairs; (e) computing an M distance between the next M number and at least a subset of all M numbers in the set of available number pairs; (f) comparing the H distance computed against an H distance threshold; (g) comparing the M distance computed against an M distance threshold; (h) discarding the next number pair if the H number is in a set of used H numbers; (i) discarding the next number pair if either the H distance is less than the H distance threshold or the M distance is less than the M distance threshold; otherwise adding the next number pair to the set of available numbers; (j) repeating from step (c) until the size of the set of available numbers is equal or greater than a set size threshold; (k) selecting a selected number pair from the set of available numbers; the selected number pair comprising a selected H number and a selected M number; (l) marking the selected H number using a human-readable encoding on a first object; (m) marking the selected M number using a machine-readable encoding on the first object; (n) placing the selected H number into the set of used H numbers; wherein the human readable encoding and the machine-readable encoding are distinct.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
DETAILED DESCRIPTION OF THE INVENTION
(11)
(12) The word code has at least two different meanings. It is necessary to use the context to determine which meaning is appropriate. First, a code may be a set of rules that maps an input symbol set to an output symbol set. Common barcodes are such examples. The input symbol set may be decimal numbers, binary numbers, alphanumeric characters and the like. The output symbol set may be groups of lines of varying width, spacing or length. Second, a code may refer to one specific marking. That is, one instance of the use of the first definition of code. This second usage of the word may also use the term marking. In general, we try to use within the word, number for an input and a marking for an output.
(13) One exemplary code for human-readable markings is the use of common seven-segment decimal digits. Here the input is a decimal number whose length is determined by the number of output characters (digits) are being used. In this context, the code for the human-readable marking may be thought of as a font. One exemplary code for machine-readable markings is a vine code. Vine codes are discussed in more detail below. For a vine code, the input is a number, which may be expressed as either a binary or decimal number.
(14) The word, symbol similarly suffers from multiple meanings in the art. For both human-readable and machine-readable codes, generally the output consists of symbols, such as a single digit or a single leaf in a vine code. However, in the usage of Hamming codes, the word symbol has a different meaning. For Hamming codes, each symbol is an element, such as a single line segment, that may be in any one of two states, such as marked or not marked. For example, the digit, 3 is a single symbol within a decimal font. However, if marked using a seven-segment format, the 3 comprises seven Hamming symbols, five of which are printed and two of which are not.
(15) Looking at
(16) In step 102 another pair of numbers H and M are chosen. Again, these may be chosen randomly or another method may be used. We may think of these as candidate numbers. We compute the distance between H and the H numbers in the set of available numbers, in step 103. We also compute the distance between M and the M numbers in the set of available numbers, in step 104. Distance is discussed more, below. For the moment, such distance may the thought of as the Hamming distance of the output symbols of each code as printed. A unique feature of embodiments is the treatment of the H and M separately. For example, in the embodiment shown in this Figure (although not all embodiments) H is checked to see if it is already in the set in step 102; however, no such check is done for M. Thus, the human-readable marking is assured uniqueness, which might not be assured for machine-readable marking. Some embodiments also check M for uniqueness.
(17) In the computing of distances in steps 103 and 104, Hamming distances may be used. However, other methods of computing a readability distance may be used in place. The computation of Hamming distance is highly dependent on the code used. For example, for seven-segment decimal digits, there are seven Hamming symbols per printed digit, or 7*3 total Hamming symbols for a three digit marking. For a four-leaf vine code where each leaf consists of a (possibly null) combination of two line segments, the total number of Hamming symbols is 2*4=8.
(18) In some embodiments, H and M are compared against all numbers in the set of used numbers. In other embodiments, only a subset of numbers in the set of used numbers are used for the comparison. This may reduce computation time. Such a subset may be chosen randomly or by other means.
(19) In step 105 the results of both computation groups from steps 103 and 104 are compared against a minimum distance threshold. If one or both of H or M are too close to an existing number in the set of used numbers, the pair (or only the offending number in the pair) is discarded and a new pair of numbers is chosen by repeating from step 102. Arrow 106 shows this path. Choosing a threshold depends on the codes chosen and the size of the code space and the number of pairs in the set. For the above examples a suitable hamming distance may be 2 to 6 for the three-digit code and 2 to 4 for the 44 vine code. Note that a distance of 1 is the minimum possible difference for two marks to be distinct. A Hamming distance of zero means the two marks are the same. Since the codes we use are one-to-one mappings from the input symbol set to the output markings, this means that the input numbers are duplicates, too.
(20) As the size of the set of used numbers increases, it will be harder and harder to choose new H and M that are more than a distance of one from all members in the set. Thus, the thresholds used in step 105 may decrease as the size of the set increases. In this way, for application where the number of animals is small, markings that are maximally distinct, and thus have the lowest possible chance of read errors, are used. As the number of animals increases, ultimately the entire code space may be used. In the case of the above example codes, the total code space is 1000256=256,000.
(21) In step 107, H and M candidate numbers have passed the distance threshold stets in step 105 and are added to the set of used numbers.
(22) In step 108, if there are enough numbers in the set the method moves on to step 110, otherwise the process is repeated, 109, going back to step 102.
(23) In step 109 a number pair H and M are chose from the set. These numbers may now be marked on an animal, step 111. The number pair H and M should then be removed from the set of available numbers, or marked as used and not selected again in step 110. Once used, they are no longer available, in step 110.
(24) Marking animals repeats, 112, until all desired animals are marked.
(25) Once an animal is marked, a record will generally be created for that animal using a primary key that is unique for all animals over all time in the system. See also
(26) Note that the steps in
(27)
(28) Turning now to
(29) In some embodiments, each leaf of the vine code may encode two bits each. In some embodiments, two bits may be encoded as one of: (i) a right leaf 31; (ii) a left leaf 32; (iii) a full-width leaf 30; and (iv) a null leaf 33. In some embodiments a leaf that is longer than a full-width leaf may be used to indicate a deleted leaf position or a marking error. In this Figure, line width is not part of the coding. In this Figure, the spacing 34 between leaves is fixed: line width is not part of the coding. An advantage over prior art is that by ignoring both line width and line spacing in the coding, the significant real-time and growth-based dynamics of a rodent tail do not distort the marked code so as to reduce the reliability of reads or cause misreads. Even if any such misread rate is low, the misread rate not accurately computable. In addition, both line thickness and line spacing are difficult to control when tattooing, whether the tattooing is done manually or by a robot.
(30) An exemplary vine code, such as shown in
(31) Turing now to
(32) Turning now to
(33)
(34) The symbol set for the human-readable code may comprise an alphanumeric character set comprising digits and Roman letters such as shown in
(35)
(36) Another embodiment uses the seven line-segment basis expanded to nine segments by the addition of two, three, or four diagonal segments in the upper and lower rectangles formed within the digit 8. The addition of these diagonal segments permits the full 36-character alphanumeric character set to be distinctly marked.
(37) Numeric only and alpha only symbol sets are expressly claimed as alternative embodiments to an alphanumeric symbols set.
(38) Turning now to
(39) Table 80 is the primary key table. Column 81 holds the field for the primary key. The primary key is unique for all animals participating in this system. For example, it may be unique for all animals ever in a vivarium or in a group of vivaria. 82 shows schematically other fields in each record. Typically, there may be 30 to 50 fields, comprising information such as species, source, birthdate, cage number, one or more studies, treatments, outcomes, death date, links to other information, and much more information about a single animal per primary key. Table 80 shows primary keys for two animals, 38745 and 99471. These animals would not be alive at the same time because we see from rows 76 and 77 in table 70 that they have the same code markings.
(40) Note that
(41)
(42) In some embodiments the human-readable code portion is also machine-readable.
(43) In some embodiments, the human-readable code portion is unique within one current study, however, such a limitation is not a requirement for all embodiments.
(44) In some embodiments, the machine-readable code portion is unique for all animals in a vivarium, or for all currently live animals in a vivarium. In some embodiments, the combination of the human-readable code portion and the machine-readable code portion is unique for all animals in a vivarium, or for all currently live animals in a vivarium. For example, the machine-readable code portion may map to a study ID.
(45) In some embodiments an animal code, the data marked on the animal, is mapped via a mapping table to the animal ID. Such a mapping table is shown in
(46) Continuing with
(47) Some embodiments use symbol sets that are numeric only or alpha only. Symbol sets may comprise or consist of foreign (non English) alphabet symbols. Such symbol sets are expressly claimed. Numbers instead of alphanumeric human-readable symbol sets do not code as efficiently with respect to animal tail area, and thus are not preferred. Also, they may be more difficult of humans to read and memorize accurately. (Compare, for example, quickly memorizing five digits compared to three letters.)
(48) The human-readable code portion 11 may code an animal ID, unique within a known scope. The human-readable code portion 11 may code an animal ID, unique within one animal study. The human-readable code portion 11 may be a first animal code, where the first animal code must be looked up in a first animal code-mapping table whose entries comprise the corresponding animal ID.
(49) Continuing with
(50) Prior art required white or black cage bottoms to machine-read a tail barcode. Prior art required cages to be free for bedding, as that might obscure a portion of the code, causing a misread. Use of a vine code with a spine eliminates these requirements as the dark markings on a light tail provide sufficient contrast, and use of a spine does not require that the edges of the tail be identifiable.
(51) In some embodiments the machine-readable code portion 12 is an animal identifier within a known scope. In some embodiments the scope is all the animals in a vivarium. In some embodiments the scope is all the live animals in a vivarium. In some embodiments the scope is all the animals in a group of vivariums.
(52) The machine-readable code portion 12 may be a second animal code, where the second animal code must be looked up in a second animal code-mapping table whose entries comprise the corresponding animal ID. The machine-readable code may be a second animal code, where the second animal code must be looked up in a second animal code-mapping table whose entries comprise a corresponding study ID.
(53) In some embodiments the combination of the human-readable and the machine-readable code portions is an animal identifier within a known scope. In some embodiments this scope is all the animals in a vivarium. In some embodiments the scope is all the live animals in a vivarium. In some embodiments the scope is all the animals in a group of vivariums. In some embodiments the scope is all the live animals of all vivariums. In some embodiments the scope is all the animals of all vivariums.
(54) The combination of the human-readable and the machine-readable code portions may be a third animal code, where the third animal code must be looked up in a third animal code mapping table whose entries comprise the corresponding animal ID.
(55) The code space of the machine-readable code portion may be no more than 10,000; 100,000; 1,000,000; 10,000,000; or 100,000,000. The code space of the machine-readable code portion may be no more than 12 bits, 14 bits, 16 bits, 18 bits, 20 bits, 22 bits 24 bits, 26 bits, or 28 bits. The code space of the machine-readable code portion may in the range of 12-14 bits, 12-16 bits, 14-18 bits, 16-20 bits, 18-22 bits, 20-24 bits, or 22-28 bits, 14-20 bits, or 16-28 bits. The machine-readable code portion may or may not comprise check bits, parity bits, checksums, CRC, and forward error correction.
(56) The animal in
(57)
(58) Human-readable codes may also be machine-readable.
(59) In most cases, there is nothing to prevent a person from reading a machine-readable code.
(60) The head 53 and the tail rollers may be operated manually or may be automated. Many different configurations of manual and automated marking devices are possible. For manual operation, the rollers 55 may be replaced by fingers and the head 53 may be a hand-held tattooing head. As shown schematically, such a machine is capable of marking both human-readable and machine-readable codes.
(61) Both control of the operation of the machine of
(62) An alternative embodiment to traditionally tattooing is to damage, abrade or puncture the skin on the rodent tail either before after applying ink. Such action may be caused by an automatically controlee needle or knife, or a laser. In one embodiment the ink is applied manually, in bulk, either before or after damaging, abrading or puncturing the skin in the pattern to be marked on the tail.
(63) An alternative embodiment to traditionally tattooing is using an ink jet printer print head to apply ink. The skin of the rodent tail may be damaged, abraded or punctured prior to applying the ink via the print head. One advantage of using an ink jet print head is the ability to easily use colored ink. Such an embodiment is specifically claimed. In one embodiment this color is used to identify a mouse within the scope of one cage. The color may be part of one of the code portions described herein, or may be an additional marking.
(64) An embodiment comprises reading codes as described herein, including devices of reading and methods of reading. Embodiments include systems that use both reading and writing, which might be use, for example, as a comprehensive animal identification system in a vivarium.
(65) The human-readable code and its associated symbology, features and data table are claimed as embodiments independent of the machine-readable code.
(66) The machine-readable code and its associated symbology, features and data table are claimed as embodiments independent of the human-readable code.
(67) An embodiment comprises reading codes as described herein, including devices of reading and methods of reading. Embodiments include systems that use both reading and writing, which might be use, for example, as a comprehensive animal identification system in a vivarium.
(68) A reading embodiment includes one that tracks the drift of the appearance of a marked code over time. Such changes include: stretching either lengthwise or width as the animal tail grows; distortion, such as adding curvature as the animal tail grows, ages, or distorts; change in color or contrast of the marking or the tail skin over time; blurring of lines over time; missing sections of line segments due to injury, shedding, cleaning and the like. On one embodiment such changes are tracked via one or metrics built into the native reading of a code. One such metric is the non-uniform stretch of bar spacing. For example, a tail does not grow uniformly. Thus, one end of a bar code may stretch more than the other end. Therefore, it is desirable to track such non-uniform stretching as the rodent grows and use that tracked metric (which may be averaged, or predicted) as a baseline of expected positions of symbol elements. Another example is the aspect ratio of either alphanumeric symbols or vine code symbols changing over time. Therefore, it is desirable to track such aspect ratio changes as the rodent grows and use that tracked metric (which may be averaged, or predicted) as a baseline of expected shapes of symbol elements. Such tracking and use of time-evolving metrics, tracked per animal, is expressly claimed.
(69) Another aspect of change to animal markings consists of less-structured changes. For example, an injury or detritus may add a dark or light area to section of a marked code or the background tail skin. A recorded image of the rodent tail, including the section with the marked code, may then be used as a baseline for code recognition. For example, a permanent piece of detritus, or an injury, might obscure a section of code. Although that code section is no longer readable using the native code reading algorithm, by use of a recorded image of that animal tail, plus reading the remaining portions of the code, the animal can be uniquely and reliably identified. Thus, in this aspect, images of animal markings are recorded and tracked as they change over time, and these images (which may averaged) are used as part of animal code reading and animal ID determination. This aspect and these reading steps are expressly claimed as embodiments for both devices and methods.
ADDITIONAL EMBODIMENTS
(70) Embodiments of this invention explicitly include all combinations and sub-combinations of all features, elements and limitation of all claims. Embodiments of this invention explicitly include all combinations and sub-combinations of all features, elements, examples, embodiments, tables, values, ranges, and drawings in the specification and drawings. Embodiments of this invention explicitly include devices and systems to implement any combination of all methods described in the claims, specification and drawings.
(71) Embodiments specifically include all independent claim limitations in all combinations with all independent claims.
(72) Embodiments are claimed wherein the word comprises is replaced with the word, consists, in one or more places in a claim.
DEFINITIONS
(73) CodeThe term, code has three different meanings depending on context. (i) It may be a method, algorithm, set of rules, or a standard of creating a mark or marking from an input, such as number or alphanumerics. For this meaning the word or process, encoding may be used, instead. (i) It may refer to the mark or marking itself. (iii) It may refer to entire process that comprises the first method, (i), as only a part of that process. For meanings (i) and (iii), one may consider that the encoding has an input and an output. Nearly all encodings have a reverse decoding. The input to an encoding may have a well-defined input symbol sets. The output of an encoding will have a well-defined output symbol set. An encoding may be the use of a font.
(74) Combinationany combination of members of a set, including a null set and all members of a set, unless otherwise stated or obvious. The elements of the combination may be ordered or unordered. The elements may have fixed positions, or may have variable positions, or may have no positions.
(75) DistanceThe distance between two elements may be viewed generally as a Hamming distance, although different embodiments may compute distance differently, including modifications to a traditional Hamming distance. See www.wikipedia.org for industry technical description of Hamming codes. For embodiments herein, for numeric characters based on a seven-segment layout, each hamming symbol is one of the seven segments. The Hamming space may then be viewed as a binary 7-dimensional space. For leaves in a vine code where each leaf has four possible states (e.g. length) the Hamming space is a binary space with 4 dimensions. A distance for two specific single symbols in a symbol set generally sums the Hamming distance for all pairs of elements (where these elements are the Hamming symbols) of the two symbols. A distance for a first group of symbols and a second group of symbols generally sums the Hamming distance for all respective pairs of symbols in the two groups. However, minimums or maximum distance may be used for selection. Note it is important to distinguish Hamming symbols from symbols marked as outputs from codes, such as one full decimal digit or one full leaf in a vine code. As a shortcut of referring to the Hamming distance (or other distance calculation) of output symbols from an encoding we may refer only to the distance of two input symbols or input values.
(76) Distincttwo or more elements are distinct if they are not the same, or not effectively the same in the described context. For example, two numbers are distinct if they are not the same number. Two or more elements may be non-tangible or abstract elements, such as the set of numeric characters and the set of alphanumeric characters, or calculus and algebra. As another example, Code 39 is distinct from Code EAN 5.
(77) Leavessee definition for vine code. A null leaf is one that has no marking in the location for that leaf.
(78) Pathogen-freemeans the population of microbes, including but not limited to bacteria, viruses, prions and toxins, relevant to the experiment, are sufficiently reduced to meet the needs of the study, or to not impact the health, performance or behavior of the target animal population or of the workers.
(79) Primary cage or home cagethe cage in which an animal spends more time than any other cage. Of note, there is a related term of art: home cage. The definition of primary cage is, in some embodiments, the home cage. An aspect of home cage/primary cage deals with the fungibility of the actual cage itself. Each time a cage is changed, the physical cage is generally either disposed of or removed for washing, and replaced by a clean cage. The new physical cage is considered the same primary cage. A primary cage may sometimes be distinguished from a non-primary cage by the purpose of the cage. For example, a home cage may be for living in, as compared to an experimental cage to which the animal is transferred that is equipped or located for one or more particular experiments for the applicable study.
(80) Sealed enclosurean enclosure sealed against pathogens that impact or alter study results, or alter the credibility or repeatability of study results, entering or leaving the enclosure.
(81) Sensormay or may not include the use of local or remote processors, and may or may not include local or remote software executing on the local or remote processors. Sensors may or may not communicate over a network. Multiple sensors may or may not include common elements.
(82) Spinesee definition for vine code.
(83) Sterilepathogen-free.
(84) The primary cage is different from special purpose, behavioral-measurement, behavioral-detection, or behavioral-observation cages that are generally used for only a short time for the duration of a particular test due to cost and mindset.
(85) Uniqueoccurs only once in the context or set defined to contain the element
(86) Vine codea code, generally machine readable, generally not commonly human-readable, comprising a series of line segments of varying lengths, or varying positions, or both. Typically the line segments are placed parallel to each other with a gap in between. An axis may be defined perpendicular to such parallel line segments. The line segments may have one end aligned with the axis or may, in some cases, cross or not cross the axis depending on the choice of the line segment. Data is encoded in the vine code by the variations in line length or position. Each line segment is called a leaf. The vine code may or may have starting or ending line segments, or both. Such starting or ending line segments may or may not encode data. Some leaves in some codes are missing. Generally, all line segments are equally spaced relative to the axis. The axis may or may not be printed or readable. A vine code may be marked in visible ink or may be marked using some other readable technology, including infrared, ultraviolet or magnet material. A vine code may be overlaid with another code such that they can be read independently. For example, a vine code may be printed in infrared ink while a human-readable code is printed overlaid in violet or blue ink. Filters may then be used to select one code over the other for reading. A human eye would not normally be able to see the infrared or ultraviolet ink.
(87) Ideal, Ideally, Optimum and PreferredUse of the words, ideal, ideally, optimum, optimum, should and preferred, when used in the context of describing this invention, refer specifically a best mode for one or more embodiments for one or more applications of this invention. Such best modes are non-limiting, and may not be the best mode for all embodiments, applications, or implementation technologies, as one trained in the art will appreciate.
(88) May, Could, Option, Mode, Alternative and FeatureUse of the words, may, could, can, option, optional, mode, alternative, typical, ideal, and feature, when used in the context of describing this invention, refer specifically to various embodiments of this invention. Described benefits refer only to those embodiments that provide that benefit. All descriptions herein are non-limiting, as one trained in the art appreciates.