more bug fixes - recursion better in fill but not perfect