added new version of bucket with more unrolling, plus a map function