How does Isilon SnapshotIQ use storage for snapshots?

A.
Uses Changed Block Tracking and only saves the changed data blocks
B.
Works on the file level and saves the entire file no matter what has changed
C.
Works with 4 KiB blocks and will always use that amount of storage, no matter what has
changed
D.
Uses Changed Block Tracking but always uses a 4 KiB block, even if the data changed is less
than that amount