(define-read-only (check-collect (staker principal))
  (let (
    (bulls-collect (contract-call? 'SP1C2K603TGWJGKPT2Z3WWHA0ARM66D352385TTWH.test-v2 check-collect-one 'SP2KAF9RF86PVX3NEE27DFV1CQX0T4WGR41X3S45C.byzantion-bitcoin-bulls staker))
    (bears-collect (contract-call? 'SP1C2K603TGWJGKPT2Z3WWHA0ARM66D352385TTWH.test-v2 check-collect-one 'SP2KAF9RF86PVX3NEE27DFV1CQX0T4WGR41X3S45C.byzantion-bitcoin-bears staker))
    (whales-collect (contract-call? 'SP1C2K603TGWJGKPT2Z3WWHA0ARM66D352385TTWH.test-v2 check-collect-one 'SP2KAF9RF86PVX3NEE27DFV1CQX0T4WGR41X3S45C.bitcoin-whales staker))
    (goats-collect (contract-call? 'SP1C2K603TGWJGKPT2Z3WWHA0ARM66D352385TTWH.test-v2 check-collect-one 'SP1C2K603TGWJGKPT2Z3WWHA0ARM66D352385TTWH.bitcoin-goats staker))
    (base-reward (+ (+ (+ bulls-collect bears-collect) whales-collect) goats-collect))
    (bonus-one (contract-call? 'SP1C2K603TGWJGKPT2Z3WWHA0ARM66D352385TTWH.test-v2 check-collect-bonus-one u1 staker))
    (bonus-two (contract-call? 'SP1C2K603TGWJGKPT2Z3WWHA0ARM66D352385TTWH.test-v2 check-collect-bonus-one u2 staker))
    (bonus-three (contract-call? 'SP1C2K603TGWJGKPT2Z3WWHA0ARM66D352385TTWH.test-v2 check-collect-bonus-one u3 staker))
    (bonus-reward (+ (+ bonus-one bonus-two) bonus-three))
  )
  (+ base-reward bonus-reward)
  )
)