more user logic crazyness