base state working