This directory presents a template for new Unit development in FLASH 3. The directory heirarchy reflects FLASH 3 architecture, and so do the individual files. Each subdirectory in this template has its own README file which documents the functions/rules that apply to that level. The top level (current) directory contains subunits and stubs or null implementations for all the routines in unit "MyUnit" that are public, and can be called from outside the module. The division of a unit into subunits is based upon identifying self-contained subsets of its public interface (API). A subunit implements at least one routine of the unit's API, and no two subunits implement the same API function. Every unit has at least one subunit "MyUnitMain", and a function in its API, MyUnit_init.F90 to initialize the unit and some MyUnit.F90 that implements the solver in the module. There may be more subunits and API functions depending upon the complexity of the unit. There should be one file for every public function of the unit. The only other files that are allowed to exist at this level are MyUnit.h and MyUnit_interface.h, if they are needed. MyUnit_interface.h includes interface definitions and MyUnit.h includes constants that MyUnit wants to make public. Interfaces must be defined for functions that either have optional arguments, or pass pointers as arguments. MyUnit_foo2 in this template is an example of a function that passes a pointer, and hence has an interface. The stubs or null implementations completely ignore all input arguments of the function, and initialize the "output only" arguments with some valid default value. Thus these functions return without making any difference to the state of the run, except making sure that NaN's are not returned in output arguments. This mechanism permits an application to exclude the unit without having to modify the code that calls the API of this module. This functionality has always been there in FLASH2, it is clarified in FLASH3. The example of documentation is included in all the files that have stubs of the public functions in this top level directory.