Functional version of pySNOt