Non working logic model, but a good framework I think.