Patent Publication Number: US-2023153947-A1

Title: System and method for recreating image with repeating patterns of graphical image file to reduce storage space

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     The present application is related to and claims priority from: U.S. Application Ser. No. 63/278,576, filed Nov. 17, 2021. U.S. Application Ser. No. 63/278,576 is herein incorporated by reference in its entirety. 
    
    
     BACKGROUND 
     The space required to store flight charts in an avionics system is large, and the available space to store flight charts in those avionics systems is limited. Additionally, avionics systems typically must maintain a multitude of potentially needed flight charts for each flight, which compounds the storage capacity problem. 
     SUMMARY 
     In one aspect, embodiments of the inventive concepts disclosed herein are directed to a system. The system may include at least one computer readable medium and at least one processor communicatively coupled to the at least one computer readable medium. The at least one processor may be configured to: obtain a graphical image file, the graphical image file including an image, wherein the image includes at least one sequence of repeating pattern elements, each of the at least one sequence including the repeating pattern elements that are repeated along a linear direction; and convert the graphical image file to at least one file including hardware directives that when executed cause a recreation of the image of the graphical image file to be drawn, wherein a file size of the at least one file is smaller than the graphical image file. 
     In a further aspect, embodiments of the inventive concepts disclosed herein are directed to a method. The method may include: obtaining, by at least one processor communicatively coupled to at least one computer readable medium, a graphical image file, the graphical image file including an image, wherein the image includes at least one sequence of repeating pattern elements, each of the at least one sequence including the repeating pattern elements that are repeated along a linear direction; and converting, by the at least one processor, the graphical image file to at least one file including hardware directives that when executed cause a recreation of the image of the graphical image file to be drawn, wherein a file size of the at least one file is smaller than the graphical image file. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       Implementations of the inventive concepts disclosed herein may be better understood when consideration is given to the following detailed description thereof. Such description makes reference to the included drawings, which are not necessarily to scale, and in which some features may be exaggerated and some features may be omitted or may be represented schematically in the interest of clarity. Like reference numerals in the drawings may represent and refer to the same or similar element, feature, or function. In the drawings: 
         FIG.  1    is a view of an exemplary embodiment of an image of an image file according to the inventive concepts disclosed herein. 
         FIG.  2    is a view of an exemplary embodiment of sequences of repeating pattern elements and transients according to the inventive concepts disclosed herein. 
         FIG.  3    is a view of an exemplary embodiment of sequences of repeating pattern elements and transients according to the inventive concepts disclosed herein. 
         FIG.  4    is a view of an exemplary embodiment of an exemplary repeating pattern element according to the inventive concepts disclosed herein. 
         FIG.  5    is a view of an exemplary embodiment of a system according to the inventive concepts disclosed herein. 
         FIG.  6    is a view of an exemplary embodiment of a sequence of repeating pattern elements according to the inventive concepts disclosed herein. 
         FIG.  7    is a diagram of an exemplary embodiment of a method according to the inventive concepts disclosed herein. 
     
    
    
     DETAILED DESCRIPTION 
     Before explaining at least one embodiment of the inventive concepts disclosed herein in detail, it is to be understood that the inventive concepts are not limited in their application to the details of construction and the arrangement of the components or steps or methodologies set forth in the following description or illustrated in the drawings. In the following detailed description of embodiments of the instant inventive concepts, numerous specific details are set forth in order to provide a more thorough understanding of the inventive concepts. However, it will be apparent to one of ordinary skill in the art having the benefit of the instant disclosure that the inventive concepts disclosed herein may be practiced without these specific details. In other instances, well-known features may not be described in detail to avoid unnecessarily complicating the instant disclosure. The inventive concepts disclosed herein are capable of other embodiments or of being practiced or carried out in various ways. Also, it is to be understood that the phraseology and terminology employed herein is for the purpose of description and should not be regarded as limiting. 
     As used herein a letter following a reference numeral is intended to reference an embodiment of the feature or element that may be similar, but not necessarily identical, to a previously described element or feature bearing the same reference numeral (e.g.,  1 ,  1   a ,  1   b ). Such shorthand notations are used for purposes of convenience only, and should not be construed to limit the inventive concepts disclosed herein in any way unless expressly stated to the contrary. 
     Further, unless expressly stated to the contrary, “or” refers to an inclusive or and not to an exclusive or. For example, a condition A or B is satisfied by anyone of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present). 
     In addition, use of the “a” or “an” are employed to describe elements and components of embodiments of the instant inventive concepts. This is done merely for convenience and to give a general sense of the inventive concepts, and “a” and “an” are intended to include one or at least one and the singular also includes the plural unless it is obvious that it is meant otherwise. 
     Finally, as used herein any reference to “one embodiment,” or “some embodiments” means that a particular element, feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the inventive concepts disclosed herein. The appearances of the phrase “in some embodiments” in various places in the specification are not necessarily all referring to the same embodiment, and embodiments of the inventive concepts disclosed may include one or more of the features expressly described or inherently present herein, or any combination of sub-combination of two or more such features, along with any other features which may not necessarily be expressly described or inherently present in the instant disclosure. 
     Broadly, embodiments of the inventive concepts disclosed herein may be directed to a system and a method configured to recreate an image of a graphical image file to reduce storage space, the image having repeating patterns. 
     Some embodiments may provide a system and method to condense certain types of repeating information in a display system (e.g., an avionics display system) without affecting the image displayed. While some embodiments may be used by an avionics display system, other embodiments may be used in any suitable system that handles images having repeating patterns that could be condensed to reduce storage space. 
     In some embodiments, a processor may detect certain patterns in an image that repeat. If these repeating patterns are detected, the processor may condense the repeating patterns such that repeating patterns are stored in a manner to significantly reduce the storage space required. 
     Referring now to  FIG.  1   , an exemplary embodiment of an image (e.g., a flight chart image  100 ) of an image file (e.g., a graphical image file) according to the inventive concepts disclosed herein is depicted. For example, flight charts typically have many repeating patterns that traverse the flight chart image  100  in various directions. For example, the flight chart image  100  includes multiple sequences of various repeating pattern elements. For example, the flight chart image  100  includes a special use airspace (SUA) boundary  102 - 1 , an air route traffic control center (ARTCC) boundary  102 - 3 , an air defence identification zone (ADIZ) boundary  102 - 2 , longitudinal and latitudinal tick mark lines  102 - 5 , and a time zone boundary  102 - 4 , all of which are sequences of repeating pattern elements. 
     Referring now to  FIGS.  2  and  3   , an exemplary embodiments of exemplary sequences  102 A,  102 B,  102 C,  102 D,  102 - 3 A (which generically may be referred to as sequence  102  throughout) of repeating pattern elements  104  and transients  106  according to the inventive concepts disclosed herein is depicted. 
     As shown, in some instances, when two or more sequences  102  meet at an intersection, a transient  106  may be drawn in the image. The transients  106  may be between the sequences  102 . The transients  106  may be partial sequences or individual lines not in the sequence  102 . The transients  106  may be drawn independently, and typically would not be condensed like the sequences  102  of repeating pattern elements  104 . For example, as shown in  FIG.  3   , a closed SUA boundary&#39;s  102 - 3  (composed of two intersecting sequences  102 - 3 A of repeating pattern elements  104 ), for instance, may have transients  106 , which may have short non-common lines at corners and/or single lines that have non-common move instructions. Transients  106  may be drawn as any line typically would be drawn, such as without using subroutines to condense sequences  102  of repeating pattern elements  104 . 
     Referring now to  FIG.  4   , an exemplary embodiment of exemplary repeating pattern element  104  according to the inventive concepts disclosed herein is depicted. As exemplarily shown, the repeating pattern element  104  may include five repeating pattern sub-elements  108 - 1 ,  108 - 2 ,  108 - 3 ,  108 - 4 ,  108 - 5  (which collectively may be referred to as  108 ). A plurality of the repeating pattern elements  104  may be repeated along a linear direction to form the sequence  102 . As exemplarily shown in  FIG.  4   , the repeating pattern element  104  may be a repeating component of an ARTCC boundary  102 - 3 . The five sub-element  108  lines may make four vertices that have angles totaling zero degrees. 
     Referring now to  FIG.  5   , an exemplary embodiment of a system  500  according to the inventive concepts disclosed herein is depicted. In some embodiments, the system  500  may include at least one computing device  502 , at least one aircraft  510 , at least one computing device  522 , and/or at least one network  524 , some or all of which may be communicatively coupled at any given time. 
     For example, the computing device  502  may be configured to obtain (e.g., receive from the computing device  522 ) a graphical image file, the graphical image file including an image (e.g., a flight chart image  100 ). The image may include at least one sequence  102  of repeating pattern elements  104 , and each of the at least one sequence  102  may include the repeating pattern elements that are repeated along a linear direction. For example, the computing device  502  may be configured to convert the graphical image file to at least one file including hardware directives that when executed cause a recreation of the image of the graphical image file to be drawn, wherein a file size of the at least one file is smaller than the graphical image file. In some embodiments, the at least one file may be output by the computing device  502  and loaded onto an avionics computing device of the aircraft  510 , such as a display unit computing device  512 . For example, the display unit computing device  512  may be configured to execute the hardware directives of the at least one file, which causes a recreation of the image of the graphical image file to be drawn on a display  514  of the display unit computing device  512 . 
     The at least one computing device  502  may be implemented as any suitable computing device, such as a host computing device located offboard of the aircraft  510  and/or located remotely from the aircraft  510 . The at least one computing device  502  may include any or all of the elements, as shown in  FIG.  5   . For example, the computing device  502  may include at least one processor  504 , at least one memory  506 , and/or at least one storage  508 , some or all of which may be communicatively coupled at any given time. For example, the at least one processor  504  may include at least one central processing unit (CPU), at least one graphics processing unit (GPU), at least one field-programmable gate array (FPGA), at least one application specific integrated circuit (ASIC), at least one digital signal processor, at least one image processor, at least one virtual machine (VM) running on at least one processor, and/or the like configured to perform (e.g., collectively perform) any of the operations disclosed throughout. For example, the at least one processor  504  may include a CPU and a GPU configured to perform (e.g., collectively perform) any of the operations disclosed throughout. The processor  504  may be configured to run various software applications or computer code stored (e.g., maintained) in a non-transitory computer-readable medium (e.g., memory  506  and/or storage  508 ) and configured to execute various instructions or operations. The processor  504  of the computing device  502  may be configured to perform any or all of the operations disclosed throughout. For example, the processor  504  of the computing device  502  may be configured to: obtain a graphical image file (e.g., a graphical flight chart image file), the graphical image file including an image (e.g., a flight chart image  100 ), wherein the image includes at least one sequence  102  of repeating pattern elements  104 , each of the at least one sequence  102  including the repeating pattern elements  104  that are repeated along a linear direction; and/or convert the graphical image file to at least one file including hardware directives that when executed cause a recreation of the image of the graphical image file to be drawn, wherein a file size of the at least one file is smaller than the graphical image file. 
     In some embodiments, the graphical image file has a set of vector graphics for each repeating pattern element  104 , wherein a given set of vector graphics for each repeating pattern element  104  of the graphical image file is converted to a more compact set of vector graphics in the recreation of the image (e.g., the flight chart image  100 ), wherein a given more compact set of vector graphics fully defines a given repeating pattern element  104  from the graphical image file. 
     In some embodiments, each repeating pattern element  104  of the repeating pattern elements  104  is composed of repeating pattern sub-elements  108 . 
     In some embodiments, the file size of the at least one file is at least 75% (e.g., at least 90%) smaller than the graphical image file. 
     In some embodiments, the graphical image file may be any suitable type of graphical image file that has at least one sequence  102  of repeated pattern elements  104 . For example, the graphical image file may be a portable digital file (PDF), a Joint Photographic Experts Group (JPEG) file, a Portable Network Graphics (PNG) file, a graphics interchange format (GIF) file, a tagged image file (TIFF), a Photoshop document (PSD), an encapsulated postscript (EPS) file, an Adobe Illustrator (AI) document, an Adobe Indesign Document (INDD), or a raw image format. 
     In some embodiments, the at least one processor  504  being configured to convert the graphical image file to the at least one file comprises the at least one processor  504  being configured to: for a given sequence  102  of the at least one sequence  102  of repeating pattern elements  104 , determine a length of the given sequence  102  of repeating pattern elements  104 ; for the given sequence  102 , determine a straight-line length along the linear direction of one repeating pattern element  104  of the repeating pattern elements  104 ; for the given sequence, based at least on the length and the straight-line length, determine a quantity of the repeating pattern elements  104  for the given sequence  102 ; store repeating pattern element hardware directives that when executed cause the repeating pattern element  104  to be drawn once; and/or store binary progression hardware directives that when executed cause a binary progression of the repeating pattern element hardware directives to be called such that the given sequence  102  of repeating pattern elements  104  is drawn. In some embodiments, at least one of the hardware directives includes scaling and rotational characteristics necessary for drawing the given sequence of repeating pattern elements to match a scale and angular orientation of the given sequence of repeating pattern elements in the image (e.g., the flight chart image  100 ) of the graphical image file. In some embodiments, the at least one sequence  102  comprises the given sequence  102  and a second sequence  102 , wherein the given sequence  102  of repeating pattern elements  104  meets the second sequence  102  of repeating pattern elements  104  at an angle; in such embodiments, the at least one processor being configured to convert the graphical image file to the at least one file may further comprise the at least one processor being configured to: store transient hardware directives that when executed cause a transient to be drawn where the given sequence and the second sequence meet. 
     In some embodiments, the image of the graphical image file is a flight chart image  100 , and when the hardware directives are executed by a display unit computing device  512  of an aircraft  510 , the recreation of the flight chart image  100  of the graphical image file is drawn on a display  514  of the display unit computing device  512 . In some embodiments, the at least one sequence  102  of repeating pattern elements  104  corresponds to at least one of a special use airspace (SUA) boundary  102 - 1 , an air route traffic control center (ARTCC) boundary  102 - 3 , an air defence identification zone (ADIZ) boundary  102 - 2 , a longitudinal tick mark line  102 - 5 , a latitudinal tick mark line  102 - 5 , or a time zone boundary  102 - 4 . 
     In some embodiments, the aircraft  510  may include at least one user (e.g., flight crew and/or pilot(s)) (not shown), at least one display unit computing device  512 , at least one aircraft computing device (not shown), and/or at least one user interface (not shown), some or all of which may be communicatively coupled at any given time. 
     The display unit computing device  512  may be implemented as any suitable computing device, such as a primary flight display (PFD) computing device and/or a multi-function window (MFW) display computing device. As shown in  FIG.  5   , the display unit computing device  512  may include at least one display  514 , at least one processor  516 , at least one memory  518 , and/or at least one storage  520 , some or all of which may be communicatively coupled at any given time. For example, the at least one processor  516  may include at least one central processing unit (CPU), at least one graphics processing unit (GPU), at least one field-programmable gate array (FPGA), at least one application specific integrated circuit (ASIC), at least one digital signal processor, at least one virtual machine (VM) running on at least one processor, and/or the like configured to perform (e.g., collectively perform) any of the operations disclosed throughout. For example, the at least one processor  516  may include a CPU and a GPU configured to perform (e.g., collectively perform) any of the operations disclosed throughout. The processor  516  may be configured to run various software applications (e.g., a PFD application, and/or an MFW application) and/or computer code stored (e.g., maintained) in a non-transitory computer-readable medium (e.g., memory  518  and/or storage  520 ) and configured to execute various instructions or operations. The processor  516  may be configured to perform any or all of the operations disclosed throughout. For example, the processor  516  may be configured to: obtain the at least one file (e.g., from the computing device  502 ); and/or execute the hardware directives of the at least one file, which causes a recreation of the image of the graphical image file to be drawn on a display  514  of the display unit computing device  512 . The display  514  may be configured to display the recreation of the image (e.g., a flight chart image  100 ) of the graphical image file. 
     In some embodiments, the at least one display unit computing device  104  for the aircraft  510  may be located offboard of the aircraft  102 , for example, if a given aircraft  102  is a remotely piloted and/or managed aircraft (e.g., an unmanned aerial vehicle (UAV) or a drone aircraft). 
     In some embodiments, the computing device  522  may be any suitable computing device. The computing device  522  may have similar elements and functionality as the computing device  502 , except that the computing device  522  may be configured to provide (e.g., via the network  524 ) the graphical image file to the computing device  502 . In some embodiments, the computing device  522  may be operated by a third-party vendor of the graphical image file. 
     For example, the processor  504  of the computing device  502  may be configured to: (a) detect a sequence  102  of repeating pattern elements  104 . The processor  504  may be configured to: (b) create a subroutine of drawing a single repeating pattern element  104  of the image (e.g., the flight chart image  100 ) of the graphical image file in hardware directives, followed by a return. The actual drawn image of the single repeating pattern element  104  may be referred to as C 0 . The processor  504  may be configured to: (c) create a function to call the single repeating pattern element  104  (which may be referred to as C 1 ), followed by a return. The processor  504  may be configured to: (d) create a function to call C 1  twice (which may be referred to as C 2 ), followed by a return. The processor  504  may be configured to: (e) create a function to call C 2  twice (which may be referred to as C 4 ), followed by a return. The processor  504  may be configured to: (f) create a function to call Cn twice (which may be referred to as C 2   n ) as needed, storing each call location. The processor  504  may be configured to: (g) when the sequence  102  of repeating pattern elements  104  is found, determine a number of repeating pattern elements  104  in the sequence  102 ; determine a highest value of 2 n  that goes into that number without exceeding the number; and create more Cn calls if the value of 2 n  is greater than the available largest Cn call. The processor  504  may be configured to: (h) using a method for low maintenance machine code subroutine execution, add each Cn routine to a display list organization area of a hardware display list, tracking the location of each called function. To invoke hardware subroutines, the absolute address of the subroutine should be known. This address is not known on the host when the hardware directives are created, so this address should be updated by the display system at run-time. The processor  504  may be configured to: (i) set the scaling and rotational characteristics as necessary. Typically, a repeating pattern element  104  may be defined in horizontal orientation, but will be drawn in a non-horizontal orientation. The processor  504  may be configured to: (j) call the Cn functions as indirect calls within the hardware display list. This may be done as necessary to draw the required number of repeating pattern elements  104  in the sequence  102 . This is a binary progression. For example, if there are 201 repeating pattern elements  104  in the sequence  102 , the following calls would be made: C 128 , C 64 , C 8 , C 1 . The processor  504  may be configured to: (k) handle transients. 
     For example, referring again to  FIG.  4   , the repeating pattern element  104  may include five repeating pattern sub-elements  108 - 1 ,  108 - 2 ,  108 - 3 ,  108 - 4 ,  108 - 5  (which collectively may be referred to as  108 ). A plurality of the repeating pattern elements  104  may be repeated along a linear direction to form the sequence  102 . As exemplarily shown in  FIG.  4   , the repeating pattern element  104  may be a repeating component of an ARTCC boundary  102 - 3 . The five sub-element  108  lines may make four vertices that have angles totaling zero degrees. The space required to display one-hundred (100) of the repeating pattern elements  104  in the sequence  102  would be 100*5*2 (sequence  102  length multiplied by lines in an repeating pattern element  104  multiplied by times number of instructions to draw a line), or 1000. However, using the method of some embodiments described herein, the space required to draw the same sequence  102  of 100 repeating pattern elements  104  would be 35 (a space savings of 96.5%). The space of 35 would include: 11 to define the repeating pattern element  104 ; 2 to define the subroutine C 1  (call and return); 18 to define subroutines C 2 , C 4 , C 8 , C 16 , C 32 , C 64  (3 each: 2 calls and return); and 4 calls in the hardware display list (calls to C 64 , C 32 , C 4 , and C 2 ). Additionally, for example, a second sequence  102  of 100 of the repeating pattern elements  104  would cost just 4 instructions since the C 1 -C 64  functions would already exist (a space savings of 99.6%). Referring now to  FIG.  6   , in a similar way as the preceding example, a sequence  102  of 100 repeating pattern elements  104 , which has only 4 double words (DWords) draw sequence (draw (2)+move (2) sequence), would have similar percentage space savings. For example, the repeating pattern element  104  would be a line drawn at an angle and a move instruction placing the stylus at the next position to draw from. The repeating pattern element  104  may be any combination of line draws and moves that allow the repeating pattern to be created. In some embodiments, the draw command takes 2 hardware directives and a move command takes 2 hardware directives. For example, a SUA, created as a repeating pattern, may take one draw and one move, or 4 total hardware directives. 
     In some embodiments, the at least one display unit computing device  512 , the computing device  502 , and/or the computing device  522  may be implemented as a single computing device or any number of computing devices configured to perform (e.g., collectively perform if more than one computing device) any or all of the operations disclosed throughout. 
     At least one processor (e.g., the at least one processor  504  and/or the at least one processor  516 ) may be configured to perform (e.g., collectively perform) any or all of the operations disclosed throughout. 
     Referring now to  FIG.  7   , an exemplary embodiment of a method  700  according to the inventive concepts disclosed herein may include one or more of the following steps. Additionally, for example, some embodiments may include performing one or more instances of the method  700  iteratively, concurrently, and/or sequentially. Additionally, for example, at least some of the steps of the method  700  may be performed in parallel and/or concurrently. Additionally, in some embodiments, at least some of the steps of the method  700  may be performed non-sequentially. 
     A step  702  may include obtaining, by at least one processor communicatively coupled to at least one computer readable medium, a graphical image file, the graphical image file including an image, wherein the image includes at least one sequence of repeating pattern elements, each of the at least one sequence including the repeating pattern elements that are repeated along a linear direction. 
     A step  704  may include converting, by the at least one processor, the graphical image file to at least one file including hardware directives that when executed cause a recreation of the image of the graphical image file to be drawn, wherein a file size of the at least one file is smaller than the graphical image file. 
     Further, the method  700  may include any of the operations disclosed throughout. 
     As will be appreciated from the above, embodiments of the inventive concepts disclosed herein may be directed to a system and a method configured to recreate an image of a graphical image file to reduce storage space, the image having repeating patterns. 
     As used throughout and as would be appreciated by those skilled in the art, “at least one non-transitory computer-readable medium” may refer to as at least one non-transitory computer-readable medium (e.g., at least one computer-readable medium implemented as hardware; e.g., at least one non-transitory processor-readable medium, at least one memory (e.g., at least one nonvolatile memory, at least one volatile memory, or a combination thereof; e.g., at least one random-access memory, at least one flash memory, at least one read-only memory (ROM) (e.g., at least one electrically erasable programmable read-only memory (EEPROM)), at least one on-processor memory (e.g., at least one on-processor cache, at least one on-processor buffer, at least one on-processor flash memory, at least one on-processor EEPROM, or a combination thereof), or a combination thereof), at least one storage device (e.g., at least one hard-disk drive, at least one tape drive, at least one solid-state drive, at least one flash drive, at least one readable and/or writable disk of at least one optical drive configured to read from and/or write to the at least one readable and/or writable disk, or a combination thereof), or a combination thereof). 
     As used throughout, “at least one” means one or a plurality of; for example, “at least one” may comprise one, two, three, . . . , one hundred, or more. Similarly, as used throughout, “one or more” means one or a plurality of; for example, “one or more” may comprise one, two, three, . . . , one hundred, or more. Further, as used throughout, “zero or more” means zero, one, or a plurality of; for example, “zero or more” may comprise zero, one, two, three, . . . , one hundred, or more. 
     In the present disclosure, the methods, operations, and/or functionality disclosed may be implemented as sets of instructions or software readable by a device. Further, it is understood that the specific order or hierarchy of steps in the methods, operations, and/or functionality disclosed are examples of exemplary approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the methods, operations, and/or functionality can be rearranged while remaining within the scope of the inventive concepts disclosed herein. The accompanying claims may present elements of the various steps in a sample order, and are not necessarily meant to be limited to the specific order or hierarchy presented. 
     It is to be understood that embodiments of the methods according to the inventive concepts disclosed herein may include one or more of the steps described herein. Further, such steps may be carried out in any desired order and two or more of the steps may be carried out simultaneously with one another. Two or more of the steps disclosed herein may be combined in a single step, and in some embodiments, one or more of the steps may be carried out as two or more sub-steps. Further, other steps or sub-steps may be carried in addition to, or as substitutes to one or more of the steps disclosed herein. 
     From the above description, it is clear that the inventive concepts disclosed herein are well adapted to carry out the objects and to attain the advantages mentioned herein as well as those inherent in the inventive concepts disclosed herein. While presently preferred embodiments of the inventive concepts disclosed herein have been described for purposes of this disclosure, it will be understood that numerous changes may be made which will readily suggest themselves to those skilled in the art and which are accomplished within the broad scope and coverage of the inventive concepts disclosed and claimed herein.