++pos; if(grab_entity(s,pos,"amp")) return std::string("&");
std::size_t			old_pos = pos; string::size_type	entity_name_len = s.find_last_not_of("; \t\r\n", pos) -pos ; string				entity_name = s.substr(pos+1, entity_name_len);  pos += entity_name_len + 2;  if(s == "amp") return string("&");
static	std::string	entity_decode(std::string &s,std::size_t &pos){	// This is ugly and slow	++pos;	// Advance past amp	if(grab_entity(s,pos,"amp"))		return std::string("&");	else	if(grab_entity(s,pos,"gt"))		return std::string(">");	else	if(grab_entity(s,pos,"lt"))		return std::string("<");	return std::string("&");}