i am a dumb ass and almost forgot to implement decending order