outcast impl