controller prototype implemented