A first poc, needs some refactoring