-- Changed path for utility files
 -- Added logic for extracting multiple instances of the component
 -- modularizing component extraction function
 -- Corrected some errors