def decide_and_run(self, string):
     """
     Decides which script the given string represents and executes that script.
     @param string: A given string.
     @return: Nothing whatsoever
     """
     outputs.print_PAULA()
     debug("Trying to decide " + string + " with parent " + self.parent)
     meaning, operand = self.decide_meaning(string)
     try:
         self.execute(meaning, operand)
     except KeyboardInterrupt:
         outputs.print_PAULA()
         debug("Exiting.")
         return
     time.sleep(conf.WAITING_TIME)
            required_packages.append(line)

    return required_packages


def install_libraries():
    SETUP_FILE = "setup.py"
    for dirname, dirnames, filenames in os.walk(LIBS_DIR):
        for filename in filenames:
            if filename == SETUP_FILE:
                system.call("cd " + dirname + " && python3 " + os.path.join(dirname, filename) + " build")
                system.call("cd " + dirname + " && sudo python3 " + os.path.join(dirname, filename) + " install")


if __name__ == "__main__":
    outputs.print_PAULA()
    outputs.print_color("INSTALLING PAULA", "red")

    (dist1, dist2, dist3) = platform.linux_distribution()

    if dist1 == "arch":
        cmd = "packer -S " + " ".join(get_required_packages("arch"))
        system.call(cmd)

    elif dist1 == "LinuxMint" or dist1 == "Ubuntu":
        cmd = "sudo apt-get install -y " + " ".join(get_required_packages("ubuntu"))
        system.call(cmd)

    else:
        print("ERROR: Your platform is not supported")
        exit(1)