(Note: this branch doesn't compile right now, this is normal) Former-commit-id: 8c7e823122744394dda31db9acbfe2823c6f29e2