code: def test_lognorm_to_norm(self) -> None:
      mu_ln = np.ones(3)
      Cov_ln = np.diag(mu_ln * (np.exp(1) - 1))
      mu_n, Cov_n = lognorm_to_norm(mu_ln, Cov_ln)
      self.assertTrue(np.allclose(mu_n, -0.5 * np.ones_like(mu_n)))
      self.assertTrue(np.allclose(Cov_n, np.eye(3)))
      Z = np.zeros_like(Cov_ln)
      Z[0, 2] = np.sqrt(np.exp(1)) - 1
      Z[2, 0] = np.sqrt(np.exp(1)) - 1
      Cov_ln2 = Cov_ln + Z
      mu_n2, Cov_n2 = lognorm_to_norm(mu_ln, Cov_ln2)
      self.assertTrue(np.allclose(mu_n2, -0.5 * np.ones_like(mu_n2)))
      Cov_n2_expected = np.array(
          [[1.0, 0.0, 0.5], [0.0, 1.0, 0.0], [0.5, 0.0, 1.0]]
      )
      self.assertTrue(np.allclose(Cov_n2, Cov_n2_expected))
  
imports: import math
  from copy import deepcopy
  import numpy
  from ax.core.metric import Metric
  from ax.core.objective import MultiObjective, Objective
  from ax.core.observation import Observation, ObservationData, ObservationFeatures
  from ax.core.optimization_config import MultiObjectiveOptimizationConfig, OptimizationConfig
  from ax.core.outcome_constraint import ObjectiveThreshold, OutcomeConstraint
  from ax.core.types import ComparisonOp
  from ax.modelbridge.transforms.log_y import lognorm_to_norm, LogY, match_ci_width, norm_to_lognorm
  from ax.utils.common.testutils import TestCase
label_desc: Use image node_id 1 for calling the LogNormTest obj's underlying member method code with example usage: obj.test_lognorm_to_norm() without return types