What is the difference between this function and `SetVariable`? I think its duplicated