some improvements
preserve _darcs