Use the range with get_logs
block_range returns [from_block, to_block), while get_logs accepts inclusive block bounds.
Pass (range).from_block and (range).to_block - 1 when querying the returned interval.
Historical ranges require a provider that retains the requested blocks.