make cast work and implemented first communication method.