I think the 4 byte assumption is safe. The largest dart files we're including now are on the order of 1.2MB. 4 bytes would take us up to 4GB. But I do like the idea of printing the `int`s and reading them back as utf - it's consistent and simple.