Study of the properties of codes and their fitness for a specific application according to its environment constraints