     private var authenticated = false
     private var matchStarted = false
     
-    private var completedAchievements = [String:GKAchievement]()
+    private var allPossibleAchievementsDict = [String:GKAchievement]()
     
     /// The shared instance of GCHelper, allowing you to access the same instance across all uses of the library.
     public class var sharedInstance: GCHelper {

        }
    }
    
     public func loadCompletedAchievements()
    {
        GKAchievement.loadAchievementsWithCompletionHandler({( achievements, error) in
            if (error != nil) {
                   print("Error in loading achievements: \(error)")
            }
            else
            if !(achievements==nil)
               {
                for anAchievement in achievements! {
                 self.completedAchievements[anAchievement.identifier!] = anAchievement                    }
                }
            })

    }
    
    public func isAchievementCompleted (achievementIdentifier achievementIdentifier: String) -> Bool{
        
        let lookupAchievement:GKAchievement? = completedAchievements[achievementIdentifier]

        if let achievement = lookupAchievement {
            if achievement.percentComplete != 100 {
                return false

    public func reportAchievementIdentifier(identifier: String, percent: Double) {
        let achievement = GKAchievement(identifier: identifier)
        
        if (!isAchievementCompleted(identifier: identifier))
        {
            achievement.percentComplete = percent
            achievement.showsCompletionBanner = true
