double stirlerr(int n)
	{
		static sfe vec_sfe = sfe();
		const double S0 = 1.0/12.0;
		const double S1 = 1.0/360.0;
		const double S2 = 1.0/1260.0;
		const double S3 = 1.0/1680.0;
		const double S4 = 1.0/1188.0;
		if (n<16) return vec_sfe[n];
		double n1 = 1.0/n;
		double n2 = n1*n1;
		if (n>500) return ((S0-S1*n2)*n1);
		if (n>80) return ((S0-(S1-S2*n2)*n2)*n1);
		if (n>35) return ((S0-(S1-(S2-S3*n2)*n2)*n2)*n1);
		return ((S0-(S1-(S2-(S3-S4*n2)*n2)*n2)*n2)*n1);
	}
 void selectedFileEntryList::add(std::string const& _filename, 
                                 bool _selected)
 {
    selectedFileEntry sfe(_filename, _selected);
    files_.push_back(sfe);
 }