public object GetValue(string name)
{
if (this.values.ContainsKey(name))
return this.values[name];
if (this.parent != null)
return this.parent.GetValue(name);
return null;
}