diff --git a/alib2cli/src/ast/expression/ImmediateExpression.h b/alib2cli/src/ast/expression/ImmediateExpression.h
index f4ec4d6983e0ef423a8739d953cb18114c79f175..01d67d8ccfea6a055438a93227d39d40b78e9a29 100644
--- a/alib2cli/src/ast/expression/ImmediateExpression.h
+++ b/alib2cli/src/ast/expression/ImmediateExpression.h
@@ -1,6 +1,7 @@
 #pragma once
 
 #include <ast/Expression.h>
+#include <object/ObjectFactory.h>
 
 namespace cli {
 
@@ -13,8 +14,7 @@ public:
 	}
 
 	std::shared_ptr < abstraction::Value > translateAndEval ( Environment & ) const override {
-		Type copy = m_value;
-		return std::make_shared < abstraction::ValueHolder < Type > > ( std::move ( copy ), true );
+		return std::make_shared < abstraction::ValueHolder < object::Object > > ( object::ObjectFactory < >::construct ( m_value ), true );
 	}
 
 };
diff --git a/alib2cli/src/ast/statements/ImmediateStatement.h b/alib2cli/src/ast/statements/ImmediateStatement.h
index bb60959ab7897bd32cc01251b94832f65f114783..071fdeb90f8b33c14a79e97c3a50e88a218b920e 100644
--- a/alib2cli/src/ast/statements/ImmediateStatement.h
+++ b/alib2cli/src/ast/statements/ImmediateStatement.h
@@ -1,19 +1,20 @@
 #pragma once
 
 #include <ast/Statement.h>
+#include <object/ObjectFactory.h>
 
 namespace cli {
 
 template < class Type >
 class ImmediateStatement final : public Statement {
-	std::shared_ptr < abstraction::ValueHolder < Type > > m_value;
+	Type m_value;
 
 public:
-	ImmediateStatement ( Type value ) : m_value ( std::make_shared < abstraction::ValueHolder < Type > > ( std::move ( value ), true ) ) {
+	ImmediateStatement ( Type value ) : m_value ( value ) {
 	}
 
 	std::shared_ptr < abstraction::Value > translateAndEval ( const std::shared_ptr < abstraction::Value > &, Environment & ) const override {
-		return m_value;
+		return std::make_shared < abstraction::ValueHolder < object::Object > > ( object::ObjectFactory < >::construct ( m_value ), true );
 	}
 
 };
diff --git a/alib2cli/test-src/cli/CliBasicParsing.cpp b/alib2cli/test-src/cli/CliBasicParsing.cpp
index cda4982ffa346ed05442c4795565126d15d5a148..c01e87a9a905fed81a7c51713585d633074ef84a 100644
--- a/alib2cli/test-src/cli/CliBasicParsing.cpp
+++ b/alib2cli/test-src/cli/CliBasicParsing.cpp
@@ -33,6 +33,8 @@ TEST_CASE ( "Cli Parser", "[unit][cli]" ) {
 	}
 
 	SECTION ( "Test Routine3" ) {
+		abstraction::DenormalizeRegistry::registerDenormalize < int > ( );
+
 		cli::Environment environment;
 
 		testLine ( "procedure consume3 ( auto && $value ) begin print $value; end", environment );