




'''simple docstring'''







from __future__ import annotations





def 						snake_case_							(_a	:							float    ,   _a	:							float    ,   _a	:							float    ,   ):
    if (electron_conc, hole_conc, intrinsic_conc).count(0     ) != 1:
        raise ValueError('''You cannot supply more or less than 2 values'''     )
    elif electron_conc < 0:
        raise ValueError('''Electron concentration cannot be negative in a semiconductor'''     )
    elif hole_conc < 0:
        raise ValueError('''Hole concentration cannot be negative in a semiconductor'''     )
    elif intrinsic_conc < 0:
        raise ValueError(
            '''Intrinsic concentration cannot be negative in a semiconductor'''     )
    elif electron_conc == 0:
        return (
            "electron_conc",
            intrinsic_conc**2 / hole_conc,
        )
    elif hole_conc == 0:
        return (
            "hole_conc",
            intrinsic_conc**2 / electron_conc,
        )
    elif intrinsic_conc == 0:
        return (
            "intrinsic_conc",
            (electron_conc * hole_conc) ** 0.5,
        )
    else:
        return (-1, -1)


if __name__ == "__main__":
   import doctest

   doctest.testmod()







'''simple docstring'''



import unittest

from diffusers import FlaxAutoencoderKL
from diffusers.utils import is_flax_available
from diffusers.utils.testing_utils import require_flax

from .test_modeling_common_flax import FlaxModelTesterMixin


if is_flax_available():
  import jax







@require_flax
class 						lowerCAmelCase__   (      a ,					unittest.TestCase					):



 """simple docstring"""



 lowerCAmelCase__  					=      FlaxAutoencoderKL
 @property
 def       UpperCAmelCase__		(		self					:       Tuple			)  -> List[str]:


      """simple docstring"""




      __SCREAMING_SNAKE_CASE     =      4
      __SCREAMING_SNAKE_CASE     =      3
      __SCREAMING_SNAKE_CASE     =      (32, 32)

      __SCREAMING_SNAKE_CASE     =      jax.random.PRNGKey(0			)
      __SCREAMING_SNAKE_CASE     =      jax.random.uniform(__SCREAMING_SNAKE_CASE					,							((batch_size, num_channels) + sizes)			)

      return {"sample": image, "prng_key": prng_key}


 def       UpperCAmelCase__		(		self					:       Union[str, Any]			)  -> Any:


      """simple docstring"""




      __SCREAMING_SNAKE_CASE     =      {
          """block_out_channels""": [32, 64],
          """in_channels""": 3,
          """out_channels""": 3,
          """down_block_types""": ["""DownEncoderBlock2D""", """DownEncoderBlock2D"""],
          """up_block_types""": ["""UpDecoderBlock2D""", """UpDecoderBlock2D"""],
          """latent_channels""": 4,
      }
      __SCREAMING_SNAKE_CASE     =      self.dummy_input
      return init_dict, inputs_dict






