    public function __construct($app = null)
    {
        if (is_object($app)) {
            $this->app = $app;
        } else {
            $this->app = mw();
        }

        $coupon_code = $this->app->user_manager->session_get('coupon_code');
        $this->coupon_data = coupon_get_by_code($coupon_code);
    }
NVD is only using a subset of CWE for mapping instead of the entire CWE, and the weakness type is not covered by that subset.