a `blockContextSucceeds` (Just b) =
    case a ^. bcPrevMain . lazy of
      Nothing   -> False -- Previous checkpoint must have been the initial one
      Just prev -> prev == b ^. bcHash

{-------------------------------------------------------------------------------
  Construction
-------------------------------------------------------------------------------}
a `blockContextSucceeds` (Just b) =
    case a ^. bcPrevMain . lazy of
      Nothing   -> False -- Previous checkpoint must have been the initial one
      Just prev -> prev == b ^. bcHash

{-------------------------------------------------------------------------------
  Construction
-------------------------------------------------------------------------------}
a `blockContextSucceeds` (Just b) =
    case a ^. bcPrevMain . lazy of
      Nothing   -> False -- Previous checkpoint must have been the initial one
      Just prev -> prev == b ^. bcHash

{-------------------------------------------------------------------------------
  Construction
-------------------------------------------------------------------------------}