working on go implementation for easy parallelizations