public function unwrapValue($value)
    {
        if (is_array($value)) {
            $self = $this;
            return array_map(function ($item) use ($self) {
                if ($item instanceof Context) {
                    return $item->unwrap();
                } else {
                    return $self->unwrapValue($item);
                }
            }, $value);
        } else {
            return $value;
        }
    }