code: def join_densities(*densities: Density) -> Density:
      
      vectors = [rho.vec for rho in densities]
      vec = reduce(outer_product, vectors)
  
      memory = dict(ChainMap(*[rho.memory for rho in densities]))  # TESTME
      return Density(vec.tensor, vec.qubits, memory)
docs: Join two mixed states into a larger qubit state