Read parameters Read each input image If the input images contain a mixture of low and high resolution windows, convert the high-resolution windows to low resolution ones. Check that the filters for each file are identical- if not issue a warning. Set output projection (reference coordinate, pixel size) from the first input image Project corners of each input image into output frame to find the bounds of the output image Calculate size of output image in pixels from bounds and pixel size Create output image Loop over input images Normalize each one by its exposure time. Loop over pixels in output image Project coordinate of output pixel into frame of input image Sample input pixel, add sample to output image Increment each weighting pixel by one if the corresponding input image pixel is to be coadded to the corresponding mosaiced image pixel. Increment the corresponding exposure image pixel by the exposure time for that image. End loop End loop Divide the mosaiced image by the exposure image. Multiply the image by the exposure time (default 1000 secs). Write output image If required, write output exposure map image.