BLStream patronage challenge solution