mental hardware and software