             trace("[InAppPurchase] removing product from queue", productId, receipt);
             _context.call("removePurchaseFromQueue", productId, receipt);
 
-            if (Capabilities.manufacturer.indexOf("iOS") > -1)
-            {
-                _iosPendingPurchases = _iosPendingPurchases.filter(function(jsonPurchase:String, index:int, purchases:Vector.<Object>):Boolean {
-                    try
-                    {
+            if (Capabilities.manufacturer.indexOf("iOS") > -1) {
+
+                var filterPurchase:Function = function(jsonPurchase:String, index:int, purchases:Vector.<Object>):Boolean {
+
+                    try {
+
                         var purchase:Object = JSON.parse(jsonPurchase);
                         return JSON.stringify(purchase.receipt) != receipt;
                     }
-                    catch(error:Error)
-                    {
+                    catch (error:Error) {
                         trace("[InAppPurchase] Couldn't parse purchase: " + jsonPurchase);
                     }
+
                     return false;
-                });
-            }
-		}
-
-        /**
-         *
+                };
+
+                _iosPendingPurchases = _iosPendingPurchases.filter(filterPurchase);
+
+            }
+		}
+
+        /**
+         * PRODUCT_INFO_RECEIVED
+         * PRODUCT_INFO_ERROR
          * @param productsId
          * @param subscriptionIds
          */

		}

        /**
         *
         * @param productId
         */
		public function makePurchase(productId:String):void {


        private static var _instance:InAppPurchase = null;

		public function InAppPurchase(lock:SingletonLock) {

            if (!isSupported)
