various modifications, implemented HILL::image