do not cache $element itself, inputs are sufficient