added a non-akka version to compare performance