def _parse_var_dict(self, var_tbl: dict) -> dict:
        """
        Create an extended list of variable names including any pre-bound ones
        Throws an error if a variable is unbound
        Returns inferred dict of variable: val pairs
        """
        var_names = var_tbl.copy()
        # check that all of the variables are bound
        for v in self.var_names:
            if v not in var_tbl:
                if self.var_names[v] is None:
                    raise(KeyError("variable " + v + " is unbound"))
                else:
                    var_names[v] = self.var_names[v]
        # squeeze the variables
        return self._squeeze(var_names)
def _parse_var_dict ( self , var_tbl : dict ) -> dict : var_names = var_tbl . copy ( ) for v in self . var_names : if v not in var_tbl : if self . var_names [ v ] is None : raise ( KeyError ( "variable " + v + " is unbound" ) ) else : var_names [ v ] = self . var_names [ v ] return self . _squeeze ( var_names )
Create an extended list of variable names including any pre-bound ones
        Throws an error if a variable is unbound
        Returns inferred dict of variable: val pairs