Use anon-namespace to avoid multiple symbol warnings.