redesigned the interface and fixed bugs for preserving
