Initial commit; not yet tested.