new digging implementation which works