echo "Accessing X from D:\n";
        var_dump(get_class_methods("X"));
    }
}
class X
{
    private function privX()
    {
    }
    protected function protX()
    {
    }
    public function pubX()
    {
    }
    public static function testFromX()
    {
        echo "Accessing C from X:\n";
        var_dump(get_class_methods("C"));
        echo "Accessing D from X:\n";
        var_dump(get_class_methods("D"));
        echo "Accessing X from X:\n";
        var_dump(get_class_methods("X"));
    }
}
echo "Accessing D from global scope:\n";
var_dump(get_class_methods("D"));
C::testFromC();
D::testFromD();
X::testFromX();
echo "Done";