Rigorous changes made.
Renamed .._fill() to .._fill_type(), added .._fill().