Working (but slightly buggy) version of core assignments