challenge 1: reimplement using rust bas64