Core struct refactor