void RepopulateWarnings()
        {
            warnings.Clear();

            if (skeletonJSON.objectReferenceValue == null)
            {
                warnings.Add("Missing Skeleton JSON");
            }
            else
            {
                if (SpineEditorUtilities.IsValidSpineData((TextAsset)skeletonJSON.objectReferenceValue) == false)
                {
                    warnings.Add("Skeleton data file is not a valid JSON or binary file.");
                }
                else
                {
                    bool detectedNullAtlasEntry = false;
                    var  atlasList = new List <Atlas>();
                    for (int i = 0; i < atlasAssets.arraySize; i++)
                    {
                        if (atlasAssets.GetArrayElementAtIndex(i).objectReferenceValue == null)
                        {
                            detectedNullAtlasEntry = true;
                            break;
                        }
                        else
                        {
                            atlasList.Add(((AtlasAsset)atlasAssets.GetArrayElementAtIndex(i).objectReferenceValue).GetAtlas());
                        }
                    }

                    if (detectedNullAtlasEntry)
                    {
                        warnings.Add("AtlasAsset elements cannot be Null");
                    }
                    else
                    {
                        //get requirements
                        var missingPaths = SpineEditorUtilities.GetRequiredAtlasRegions(AssetDatabase.GetAssetPath((TextAsset)skeletonJSON.objectReferenceValue));

                        foreach (var atlas in atlasList)
                        {
                            for (int i = 0; i < missingPaths.Count; i++)
                            {
                                if (atlas.FindRegion(missingPaths[i]) != null)
                                {
                                    missingPaths.RemoveAt(i);
                                    i--;
                                }
                            }
                        }

                        foreach (var str in missingPaths)
                        {
                            warnings.Add("Missing Region: '" + str + "'");
                        }
                    }
                }
            }
        }