working, except for odd case of 112