correct implementation of knockout