<?php
namespace N1 {
class C1
{
}
class C2
{
public $c1;
static protected $ns = __NAMESPACE__;
public function __construct()
{
$classname = static::$ns . '\\C1';
$this->c1 = new $classname;
}
}
}
namespace N2 {
class C1 extends \N1\C1
{
}
class C2 extends \N1\C2
{
static protected $ns = __NAMESPACE__;
}
}
namespace {
$n1c2 = new \N1\C2;
$n2c2 = new \N2\C2;
}
PD9waHAKCm5hbWVzcGFjZSBOMSB7CiAgICBjbGFzcyBDMQogICAgewogICAgfQoKICAgIGNsYXNzIEMyCiAgICB7CiAgICAgICAgcHVibGljICRjMTsKCiAgICAgICAgc3RhdGljIHByb3RlY3RlZCAkbnMgPSBfX05BTUVTUEFDRV9fOwoKICAgICAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKQogICAgICAgIHsKICAgICAgICAgICAgJGNsYXNzbmFtZSA9IHN0YXRpYzo6JG5zIC4gJ1xcQzEnOyAKICAgICAgICAgICAgJHRoaXMtPmMxID0gbmV3ICRjbGFzc25hbWU7CiAgICAgICAgfQogICAgfQp9CgpuYW1lc3BhY2UgTjIgewogICAgY2xhc3MgQzEgZXh0ZW5kcyBcTjFcQzEKICAgIHsKICAgIH0KCiAgICBjbGFzcyBDMiBleHRlbmRzIFxOMVxDMgogICAgewogICAgICAgIHN0YXRpYyBwcm90ZWN0ZWQgJG5zID0gX19OQU1FU1BBQ0VfXzsKICAgIH0KfQoKbmFtZXNwYWNlIHsKICAgICRuMWMyID0gbmV3IFxOMVxDMjsKICAgIHZhcl9kdW1wKCRuMWMyKTsKICAgICRuMmMyID0gbmV3IFxOMlxDMjsKICAgIHZhcl9kdW1wKCRuMmMyKTsKfQ==