fix errors, add dry mode, add new features