Inputs with modifiers on same input as non modifiers

Hello!
A common use case in games is using 1-9, shift 1-9, alt 1-9, control 1-9.
I see that this is simple to set up in theory, but in practice, you quickly hit issues. Altho I am hoping that I am just missing something!

The issue I am experiencing is how do I get 1-9 with NO modifier to NOT fire if you are holding down shift, alt, control, or any possible rebinded modifier.

I am assuming I will need to write code in my input solution for keys 1-9 checking to make sure shift, alt, and control is not held down.

But not really shift, alt and control and not really just 1-9… I will need to check if any possibly rebinded input have a modifier for inputs that other inputs have actions assigned too. Which very quickly becomes quite exceptionally hard to do.

Otherwise, once users start rebinding inputs they will quickly hit a situation where they are firing 2 inputs because of a modifier on an already existing input, and because of the dynamic nature of it… implementing a solution that’s not an engine solution is going to be difficult.

Possible I am missing something or overthinking it tho, but currently, it doesn’t seem like this is being handled or addressed.

I believe the solution is, if a key is being used as a modifier it should be removed from the input of the other action.

If I am not mistaking that’s how most games handle it.
If I press “F” to interact, then I go into keybindings and for some weird reason make “F+G” open my inventory, it should remove the Interact actions binding of “F”.

EDIT
also, the sample project for rebinding doesnt handle modifiers. It does the rebind on key down when it should do it on key up and read all keys pressed during the time.

edit 2
while im at it, does the modifier thing even make sense? It should probably just be a list of keys on the listener.

Which come to think of it, I don’t think the input system handles duplicate bindings at all.
Is there a way we are meant to handle it?
(before I go off on a rabbit hole making it work on my own that is haha)