#include <stdio.h>

typedef struct A A_t;

struct A{
    void (*f1)(A_t* self);
    void (*f2)(A_t* self);

    int dat1;
    int dat2;
};

void func1(A_t* a) {}
void func2(A_t* a) {}

A_t const1()
{
    A_t l = {func1, func2, 0, 0};
    return l;
}


int main(void) {
	// your code goes here
A_t a = const1();
a.f1(&a);
	return 0;
}
