first working release for the serial implementation