sclass AdaptiveAverage { double devisor = 1, value, coolDownSpeed = .5; void add(double d) { value = blend(value, d, 1/devisor); devisor += coolDownSpeed; } double get() { ret value; } double age() { ret devisor; } }