 import Foundation
 
 
-public enum ProductState: Int {
-    case retrieving, retrieved, purchased
+public enum ProductState {
+    
+    case retrieving
+    
+    case retrieved
+    
+    case purchased
 }
 
-open class ProductsDataSource: NSObject {
+public class ProductsDataSource {
     
     private let localProducts: LocalProductsProtocol
     private let storeProducts: StoreProductsProtocol

        }
    }
    
    public func descriptionForProductAtIndex(_ index: Int) -> String {
        let productIdentifier = localProducts.identifierForProductAtIndex(index)
        if storeProducts.productsReceived, let description = storeProducts.localizedDescriptionForProductWithIdentifier(productIdentifier) {
            return description

        }
    }
    
    public func localizedPriceForProductAtIndex(_ index: Int) -> String? {
        let productIdentifier = localProducts.identifierForProductAtIndex(index)
        if storeProducts.productsReceived, let price = storeProducts.localizedPriceForProductWithIdentifier(productIdentifier) {
            return price
