Self model theory: learning from the future.