#include <iostream>
#include <vector>
using namespace std;
    class C
    {
    public:
        C(const std::vector<double>& a_, const std::vector<double>& b_)
            :a(a_),b(b_){};
        double operator()(size_t i, size_t j) const { return a[i]*b[j]; }
    private:
         std::vector<double> a, b;
    };
    
int main() {
	C c({1,2,3,4},{10,20,30,40});
	cout << "3*30 "<<c(2,2);
	// your code goes here
	return 0;
}