Add diminish
Various changes