         
         return (endpoint, queries)
     }
-    
-    //MARK: decode response
-    
+}
+    
+public struct PageUnboxing {
+
     public static func unboxResponse<T>(data: Data, locale: Locale?, with fieldUnboxer: @escaping ((String) -> UnboxedType?), via creator: @escaping ((UnboxedFields) -> T?)) -> Result<PagedResult<T>>  {
         let decoder = JSONDecoder()
         

            }
        }
    }
    
    //MARK: encoding to Contentful JSON Data
    
    public static func encode<T: Encodable>(object: T, locale: LocaleCode) -> (data: Data, sysData: SysData)? {
        

private typealias RefDict = [String: [String:StringDict]]


public struct PageRequest {
    
    public static func prepareRequest(forContent contentType: String, fromSpace spaceId: String,  page: Page) -> (endpoint: String, query: [URLQueryItem]) {
        let endpoint = "/spaces/\(spaceId)/entries"
