public void EstablecerObjetoDatos(IImplementacion impl, IPropiedad propiedad, IObjetoDatos valor, IObjetoDatos valorInicial)
 {
     if (!(valorInicial?.Equals(valor) ?? valor == null)) // si valor inicial es nulo, sera igual al nuevo valor si nuevo valor no es nulo
     {
         RegistrarEstablecer(FabricaEstado.Crear(impl, propiedad, valorInicial));
     }
 }