restructuration of code