Correct implementation of absorption