added robot constructor