diff --git a/src/face.cpp b/src/face.cpp
index f5ce755..9faabe9 100644
--- a/src/face.cpp
+++ b/src/face.cpp
@@ -13,17 +13,20 @@
   
 uint64_t 
 Face::expressInterest
-  (const Name& name, const Interest *interestTemplate, const OnData& onData, const OnTimeout& onTimeout,
-   WireFormat& wireFormat)
+  (const Name& name, const Interest *interestTemplate, const OnData& onData, const OnTimeout& onTimeout)
 {
   if (interestTemplate)
     return node_.expressInterest(Interest
-      (name, interestTemplate->getMinSuffixComponents(), interestTemplate->getMaxSuffixComponents(),
-       interestTemplate->getPublisherPublicKeyDigest(), interestTemplate->getExclude(),
-       interestTemplate->getChildSelector(), interestTemplate->getAnswerOriginKind(),
-       interestTemplate->getScope(), interestTemplate->getInterestLifetimeMilliseconds()), onData, onTimeout, wireFormat);
+      (name,
+       interestTemplate->getMinSuffixComponents(), interestTemplate->getMaxSuffixComponents(),
+       interestTemplate->getExclude(),
+       interestTemplate->getChildSelector(),
+       interestTemplate->getMustBeFresh(),
+       interestTemplate->getScope(),
+       interestTemplate->getInterestLifetime()),
+      onData, onTimeout);
   else
-    return node_.expressInterest(Interest(name, 4000.0), onData, onTimeout, wireFormat);  
+    return node_.expressInterest(Interest(name, 4000.0), onData, onTimeout);  
 }
 
 void 
