a first version working but clearly not completed!