diff --git a/src/loop_closure_falko.cpp b/src/loop_closure_falko.cpp
index 6bb979f84d32f8d48ae7a9515dc05f5ccdc07fe2..ff3c8878f488fe2c6970c457f0a9d5c815fdc24c 100644
--- a/src/loop_closure_falko.cpp
+++ b/src/loop_closure_falko.cpp
@@ -45,7 +45,7 @@ namespace laserscanutils{
     }
 
     template <typename D,typename Extr, typename M>
-    std::shared_ptr<sceneFalko<D>> loopClosureFalko<D,Extr, M>::extractScene(LaserScan &scan,LaserScanParams &scanParams){
+    typename loopClosureFalko<D,Extr, M>::sceneFalkoBSCPtr loopClosureFalko<D,Extr, M>::extractScene(LaserScan &scan,LaserScanParams &scanParams){
         auto newScene=std::make_shared<sceneFalko<D>>();
         auto scanFALKO =loopClosureFalko<D,Extr,M>::convert2LaserScanFALKO(scan, scanParams);
         // Extract keypoints
diff --git a/src/loop_closure_falko.h b/src/loop_closure_falko.h
index 620c6389303d45fcf78513c56e6f8808bb74b0f6..4c0623c20876af6fbdf32e6e527cb702d096b545 100644
--- a/src/loop_closure_falko.h
+++ b/src/loop_closure_falko.h
@@ -49,6 +49,9 @@ class loopClosureFalko : public loopClosureBase2d, public falkolib::FALKOExtract
 private:
 
 public:
+
+    typedef std::shared_ptr<sceneFalko<D>> sceneFalkoBSCPtr;
+
     Extr extractor_;
     M matcher_;
 
@@ -66,12 +69,14 @@ public:
 
     /** \brief update the scene struct with keypoints and descriptors
      **/
-    std::shared_ptr<sceneFalko<D>> extractScene(LaserScan &scan,LaserScanParams &scanParams) override;
+    sceneFalkoBSCPtr extractScene(LaserScan &scan,LaserScanParams &scanParams) override;
 
     /** \brief Convert scans from laserscanutils::LaserScan to falkolib::LaserScan object
      **/
     std::shared_ptr<falkolib::LaserScan> convert2LaserScanFALKO(LaserScan &scan,LaserScanParams &scanParams);
 
+    //std::share
+
     
 };
 } /* namespace laserscanutils */