Work in progress, recovered from old crybaby.