This is only a proof of concept at its current version and not the final, There will be some differences in the final version