use S.Naturals instead of tuple()