First "usable" version (but still very simple)