Do you ever need to call the "simple" version directly?  Why not always call the "smart" version (thus eliminating the need for 2 separate functions?)