Value and weight now changes, but does not check if limit was exceeded