adding another module for handling FOUT (still in progress)