zipBytesWith calls smart constructor