protected function extractArguments(array $arguments, array $data)
    {
        $instanceArgs = [];

        foreach ($arguments as $arg) {
            if (array_key_exists($arg->getName(), $data)) {
                $instanceArgs[] = $data[$arg->getName()];
            } else {
                $instanceArgs[] = null;
            }
        }

        return $instanceArgs;
    }