public function __construct($persistence = null, $defaults = [])
{
if (is_string($defaults) || $defaults === false) {
$defaults = [$defaults];
}
if (is_array($persistence)) {
$defaults = $persistence;
$persistence = null;
}
foreach ($defaults as $key => $val) {
if ($val !== null) {
$this->{$key} = $val;
}
}
if ($persistence) {
$persistence->add($this, $defaults);
}
}