code: def treeWithAppliedTxns(self, txns: List, currentTree=None):
          
          currentTree = currentTree or self.tree
          # Copying the tree is not a problem since its a Compact Merkle Tree
          # so the size of the tree would be 32*(lg n) bytes where n is the
          # number of leaves (no. of txns)
          tempTree = copy(currentTree)
          for txn in txns:
              s = self.serialize_for_tree(txn)
              tempTree.append(s)
          return tempTree
docs: Return a copy of merkle tree after applying the txns
          :param txns:
          :return: