density step sort of working, overruns if you let it and segfaults