         ]
         guard let request: NSMutableURLRequest = NSMutableURLRequest.mutableOAuthRequestWithBaseURL(baseURL, path:"/api/submit", parameter:parameter, method:"POST", token:token)
             else { throw ReddiftError.URLError.error }
-        return handleAsJSONRequest(request, completion:completion)
+        return executeTask(request, handleResponse: handleResponse2JSON, completion: completion)
     }
     
     /**

    - parameter completion: The completion handler to call when the load request is complete.
    - returns: Data task which requests search to reddit.com.
    */
    public func setNSFW(mark: Bool, thing: Thing, completion: (Result<RedditAny>) -> Void) throws -> NSURLSessionDataTask {
        let path = mark ? "/api/marknsfw" : "/api/unmarknsfw"
        guard let request = NSMutableURLRequest.mutableOAuthRequestWithBaseURL(baseURL, path:path, parameter:["id":thing.name], method:"POST", token:token)
            else { throw ReddiftError.URLError.error }
        return handleAsJSONRequest(request, completion:completion)
    }
    
    // MARK: BDT does not cover following methods.

                    }
                    return Result(error: ReddiftError.Malformed.error)
                })
        }
        return executeTask(request, handleResponse: closure, completion: completion)
    }
    
    /**
