diff --git a/projecthandler/osm_model.py b/projecthandler/osm_model.py
index 1775797..718c08d 100644
--- a/projecthandler/osm_model.py
+++ b/projecthandler/osm_model.py
@@ -56,11 +56,10 @@
             client = Client()
             if type_descriptor == 'nsd':
                 result = client.nsd_get(descriptor_id)
-                print result
+                
             elif type_descriptor == 'vnfd':
                 result = client.vnfd_get(descriptor_id)
 
-                print result
         except Exception as e:
             log.exception(e)
             result = {}
@@ -175,11 +174,11 @@
             else:
                 return False
             result = yaml.load(result)
-            print result
+            
         except Exception as e:
             log.exception(e)
             result = False
-        print result
+        
         return result
 
     def get_add_element(self, request):
@@ -215,7 +214,6 @@
         except Exception as e:
             log.exception(e)
             result = False
-        print result
         return result
 
     @staticmethod
@@ -232,5 +230,4 @@
         except Exception as e:
             log.exception(e)
             result = False
-        print result
         return result
\ No newline at end of file
