less shitty and hardcoded
adding hints