Tried to make it dynamic