I failed to understand this http download example:
https://github.com/Redundancy/go-sync/blob/master/http_test.go#L68
It is using the to-be-downloaded reference data to calculate the referenceFileIndex and checksumLookup, on the client side, to fetch the reference data from the server side?