We downloaded a set of compounds from PubChem , and then these compounds were filtered based on heavy atoms and molecular weights and only contained elements of C, O, S, H, N, Cl, Br, F, and P. Because of the complex 3D nature of molecules, there could be occlusions between atoms and bonds, where vital information is hidden in the image. Although there are methods to avoid occlusions by some spatial algorithm or human selection, we removed 3D spatial information in the pre-training stage. Thus, we downloaded the 2D coordinates from PubChem instead of 3D. This also makes the model focus on identifying atoms and their connections instead of the spatial information. After filtering, there are 79,369 compounds in the dataset. We created a Blender Python Script to render these compounds into 3D molecular images. OpenAI ChatGPT was used to write the building blocks (API Wrapper) and some script logic. The colour of each atom followed the CPK colouring convention and was according to a couple of online sources and 3D molecular models on the market. The atoms are rendered using spheres, single bonds are rendered using cylinders, and double bonds are rendered using tori. For each molecule, we rendered four different images at different angles. We use the image size of 224×224 given that our molecules are not too complex, and by using 224×224, we can better utilize the pre-training weights from the SwinOCSR encoder.