Hmm but how to implement something like that