initial carving support
added selective carving and carving mode