Needs Apache 2 license header.