implemented slot add logic