/* @generated */
digraph iCFG {
"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals:  s:std::basic_string<char,std::char_traits<char>,std::allocator<char>> x:int* \n   DECLARE_LOCALS(&return,&s,&x); [line 17]\n " color=yellow style=filled]
	

	 "main.fad58de7366495db4650cfefac2fcd61_1" -> "main.fad58de7366495db4650cfefac2fcd61_7" ;
"main.fad58de7366495db4650cfefac2fcd61_2" [label="2: Exit main \n  " color=yellow style=filled]
	

"main.fad58de7366495db4650cfefac2fcd61_3" [label="3:  DeclStmt \n   _fun_std::basic_string<char,std::char_traits<char>,std::allocator<char>>_basic_string(&s:std::basic_string<char,std::char_traits<char>,std::allocator<char>>*,\"1234\":char const *) [line 22]\n " shape="box"]
	

	 "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ;
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4:  DeclStmt \n   _fun_std::shared_ptr<int>_shared_ptr(&x:int**) [line 21]\n  n$0=*&x:int* [line 21]\n " shape="box"]
	

	 "main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ;
"main.fad58de7366495db4650cfefac2fcd61_5" [label="5:  Call _fun_external::fun \n   n$1=_fun_external::fun(1:int) [line 20]\n " shape="box"]
	

	 "main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ;
"main.fad58de7366495db4650cfefac2fcd61_6" [label="6:  Call _fun_internal_exclude::fun \n   n$2=_fun_internal_exclude::fun(1:int) [line 19]\n " shape="box"]
	

	 "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_5" ;
"main.fad58de7366495db4650cfefac2fcd61_7" [label="7:  Call _fun_internal::fun \n   n$3=_fun_internal::fun(1:int) [line 18]\n " shape="box"]
	

	 "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_6" ;
"fun#internal#_ZN8internal3funEi.155c7f802a6b5777ac6736e35c7e46a6_1" [label="1: Start internal::fun\nFormals:  a:int\nLocals:  \n   DECLARE_LOCALS(&return); [line 12]\n " color=yellow style=filled]
	

	 "fun#internal#_ZN8internal3funEi.155c7f802a6b5777ac6736e35c7e46a6_1" -> "fun#internal#_ZN8internal3funEi.155c7f802a6b5777ac6736e35c7e46a6_3" ;
"fun#internal#_ZN8internal3funEi.155c7f802a6b5777ac6736e35c7e46a6_2" [label="2: Exit internal::fun \n  " color=yellow style=filled]
	

"fun#internal#_ZN8internal3funEi.155c7f802a6b5777ac6736e35c7e46a6_3" [label="3:  Return Stmt \n   n$0=*&a:int [line 12]\n  *&return:int=n$0 [line 12]\n " shape="box"]
	

	 "fun#internal#_ZN8internal3funEi.155c7f802a6b5777ac6736e35c7e46a6_3" -> "fun#internal#_ZN8internal3funEi.155c7f802a6b5777ac6736e35c7e46a6_2" ;
"used_in_main_header#internal#_ZN8internal19used_in_main_headerEi.b09afca559a746b13c3950e1a73f9839_1" [label="1: Start internal::used_in_main_header\nFormals:  a:int\nLocals:  \n   DECLARE_LOCALS(&return); [line 19]\n " color=yellow style=filled]
	

	 "used_in_main_header#internal#_ZN8internal19used_in_main_headerEi.b09afca559a746b13c3950e1a73f9839_1" -> "used_in_main_header#internal#_ZN8internal19used_in_main_headerEi.b09afca559a746b13c3950e1a73f9839_3" ;
"used_in_main_header#internal#_ZN8internal19used_in_main_headerEi.b09afca559a746b13c3950e1a73f9839_2" [label="2: Exit internal::used_in_main_header \n  " color=yellow style=filled]
	

"used_in_main_header#internal#_ZN8internal19used_in_main_headerEi.b09afca559a746b13c3950e1a73f9839_3" [label="3:  Return Stmt \n   n$0=*&a:int [line 19]\n  *&return:int=n$0 [line 19]\n " shape="box"]
	

	 "used_in_main_header#internal#_ZN8internal19used_in_main_headerEi.b09afca559a746b13c3950e1a73f9839_3" -> "used_in_main_header#internal#_ZN8internal19used_in_main_headerEi.b09afca559a746b13c3950e1a73f9839_2" ;
"unused_deref_in_header#_Z22unused_deref_in_headerPi.4ca6dae5ef0c61fe5177a61b80c5eccb_1" [label="1: Start unused_deref_in_header\nFormals:  a:int*\nLocals:  x:int \n   DECLARE_LOCALS(&return,&x); [line 16]\n " color=yellow style=filled]
	

	 "unused_deref_in_header#_Z22unused_deref_in_headerPi.4ca6dae5ef0c61fe5177a61b80c5eccb_1" -> "unused_deref_in_header#_Z22unused_deref_in_headerPi.4ca6dae5ef0c61fe5177a61b80c5eccb_4" ;
"unused_deref_in_header#_Z22unused_deref_in_headerPi.4ca6dae5ef0c61fe5177a61b80c5eccb_2" [label="2: Exit unused_deref_in_header \n  " color=yellow style=filled]
	

"unused_deref_in_header#_Z22unused_deref_in_headerPi.4ca6dae5ef0c61fe5177a61b80c5eccb_3" [label="3:  Return Stmt \n   n$0=*&a:int* [line 18]\n  n$1=*n$0:int [line 18]\n  *&return:int=n$1 [line 18]\n " shape="box"]
	

	 "unused_deref_in_header#_Z22unused_deref_in_headerPi.4ca6dae5ef0c61fe5177a61b80c5eccb_3" -> "unused_deref_in_header#_Z22unused_deref_in_headerPi.4ca6dae5ef0c61fe5177a61b80c5eccb_2" ;
"unused_deref_in_header#_Z22unused_deref_in_headerPi.4ca6dae5ef0c61fe5177a61b80c5eccb_4" [label="4:  DeclStmt \n   n$2=_fun_internal::used_in_main_header(0:int) [line 17]\n  *&x:int=n$2 [line 17]\n " shape="box"]
	

	 "unused_deref_in_header#_Z22unused_deref_in_headerPi.4ca6dae5ef0c61fe5177a61b80c5eccb_4" -> "unused_deref_in_header#_Z22unused_deref_in_headerPi.4ca6dae5ef0c61fe5177a61b80c5eccb_3" ;
"model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvDn).24f333ae8929817fff3c263651c77d16_1" [label="1: Start std::shared_ptr<int>_model_set\nFormals:  self:void const ** value:int\nLocals:  \n   DECLARE_LOCALS(&return); [line 54]\n " color=yellow style=filled]
	

	 "model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvDn).24f333ae8929817fff3c263651c77d16_1" -> "model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvDn).24f333ae8929817fff3c263651c77d16_3" ;
"model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvDn).24f333ae8929817fff3c263651c77d16_2" [label="2: Exit std::shared_ptr<int>_model_set \n  " color=yellow style=filled]
	

"model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvDn).24f333ae8929817fff3c263651c77d16_3" [label="3:  BinaryOperatorStmt: Assign \n   n$0=*&self:void const ** [line 55]\n  n$1=*&value:int [line 55]\n  *n$0:void const *=n$1 [line 55]\n " shape="box"]
	

	 "model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvDn).24f333ae8929817fff3c263651c77d16_3" -> "model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvDn).24f333ae8929817fff3c263651c77d16_2" ;
"model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvPv).0cb322c919ae980fbaa034b2b8b82974_1" [label="1: Start std::shared_ptr<int>_model_set\nFormals:  self:void const ** value:void*\nLocals:  \n   DECLARE_LOCALS(&return); [line 66]\n " color=yellow style=filled]
	

	 "model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvPv).0cb322c919ae980fbaa034b2b8b82974_1" -> "model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvPv).0cb322c919ae980fbaa034b2b8b82974_3" ;
"model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvPv).0cb322c919ae980fbaa034b2b8b82974_2" [label="2: Exit std::shared_ptr<int>_model_set \n  " color=yellow style=filled]
	

"model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvPv).0cb322c919ae980fbaa034b2b8b82974_3" [label="3:  BinaryOperatorStmt: Assign \n   n$0=*&self:void const ** [line 67]\n  n$1=*&value:void* [line 67]\n  *n$0:void const *=n$1 [line 67]\n " shape="box"]
	

	 "model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvPv).0cb322c919ae980fbaa034b2b8b82974_3" -> "model_set#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE9model_setEPPKvPv).0cb322c919ae980fbaa034b2b8b82974_2" ;
"shared_ptr#shared_ptr<int>#std#{_ZNSt3__110shared_ptrIiEC1Ev|constexpr}.a83df2e127dfd835cd19672b6db04408_1" [label="1: Start std::shared_ptr<int>_shared_ptr\nFormals:  this:int**\nLocals:  \n   DECLARE_LOCALS(&return); [line 100]\n " color=yellow style=filled]
	

	 "shared_ptr#shared_ptr<int>#std#{_ZNSt3__110shared_ptrIiEC1Ev|constexpr}.a83df2e127dfd835cd19672b6db04408_1" -> "shared_ptr#shared_ptr<int>#std#{_ZNSt3__110shared_ptrIiEC1Ev|constexpr}.a83df2e127dfd835cd19672b6db04408_4" ;
"shared_ptr#shared_ptr<int>#std#{_ZNSt3__110shared_ptrIiEC1Ev|constexpr}.a83df2e127dfd835cd19672b6db04408_2" [label="2: Exit std::shared_ptr<int>_shared_ptr \n  " color=yellow style=filled]
	

"shared_ptr#shared_ptr<int>#std#{_ZNSt3__110shared_ptrIiEC1Ev|constexpr}.a83df2e127dfd835cd19672b6db04408_3" [label="3:  Call _fun_std::shared_ptr<int>_model_set \n   n$0=*&this:int** [line 101]\n  _fun_std::shared_ptr<int>_model_set(n$0:void const **,null:int) [line 101]\n " shape="box"]
	

	 "shared_ptr#shared_ptr<int>#std#{_ZNSt3__110shared_ptrIiEC1Ev|constexpr}.a83df2e127dfd835cd19672b6db04408_3" -> "shared_ptr#shared_ptr<int>#std#{_ZNSt3__110shared_ptrIiEC1Ev|constexpr}.a83df2e127dfd835cd19672b6db04408_2" ;
"shared_ptr#shared_ptr<int>#std#{_ZNSt3__110shared_ptrIiEC1Ev|constexpr}.a83df2e127dfd835cd19672b6db04408_4" [label="4:  Constructor Init \n   n$1=*&this:int** [line 101]\n  _fun_std::std__shared_ptr<int>_std__shared_ptr(n$1:int**) [line 100]\n  n$2=*n$1:int* [line 100]\n " shape="box"]
	

	 "shared_ptr#shared_ptr<int>#std#{_ZNSt3__110shared_ptrIiEC1Ev|constexpr}.a83df2e127dfd835cd19672b6db04408_4" -> "shared_ptr#shared_ptr<int>#std#{_ZNSt3__110shared_ptrIiEC1Ev|constexpr}.a83df2e127dfd835cd19672b6db04408_3" ;
"~shared_ptr#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiED0Ev).64f04c4b2ed4a174cbcd135fb2e0998b_1" [label="1: Start std::shared_ptr<int>_~shared_ptr\nFormals:  this:int**\nLocals:  \n   DECLARE_LOCALS(&return); [line 182]\n " color=yellow style=filled]
	

	 "~shared_ptr#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiED0Ev).64f04c4b2ed4a174cbcd135fb2e0998b_1" -> "~shared_ptr#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiED0Ev).64f04c4b2ed4a174cbcd135fb2e0998b_3" ;
"~shared_ptr#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiED0Ev).64f04c4b2ed4a174cbcd135fb2e0998b_2" [label="2: Exit std::shared_ptr<int>_~shared_ptr \n  " color=yellow style=filled]
	

"~shared_ptr#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiED0Ev).64f04c4b2ed4a174cbcd135fb2e0998b_3" [label="3:  Call _fun_std::shared_ptr<int>_reset<int,_void> \n   n$0=*&this:int** [line 182]\n  _=*n$0:int* [line 182]\n  _fun_std::shared_ptr<int>_reset<int,_void>(n$0:int**,null:int*) [line 182]\n " shape="box"]
	

	 "~shared_ptr#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiED0Ev).64f04c4b2ed4a174cbcd135fb2e0998b_3" -> "~shared_ptr#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiED0Ev).64f04c4b2ed4a174cbcd135fb2e0998b_2" ;
"reset<int,_void>#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE5resetIivEEvPT_).a1205b56a9f5cca1b1c1504f3db46c6e_1" [label="1: Start std::shared_ptr<int>_reset<int,_void>\nFormals:  this:int** p:int*\nLocals:  \n   DECLARE_LOCALS(&return); [line 234]\n " color=yellow style=filled]
	

	 "reset<int,_void>#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE5resetIivEEvPT_).a1205b56a9f5cca1b1c1504f3db46c6e_1" -> "reset<int,_void>#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE5resetIivEEvPT_).a1205b56a9f5cca1b1c1504f3db46c6e_3" ;
"reset<int,_void>#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE5resetIivEEvPT_).a1205b56a9f5cca1b1c1504f3db46c6e_2" [label="2: Exit std::shared_ptr<int>_reset<int,_void> \n  " color=yellow style=filled]
	

"reset<int,_void>#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE5resetIivEEvPT_).a1205b56a9f5cca1b1c1504f3db46c6e_3" [label="3:  Call _fun_std::shared_ptr<int>_model_set \n   n$0=*&this:int** [line 240]\n  n$1=*&p:int* [line 240]\n  _fun_std::shared_ptr<int>_model_set(n$0:void const **,n$1:void*) [line 240]\n " shape="box"]
	

	 "reset<int,_void>#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE5resetIivEEvPT_).a1205b56a9f5cca1b1c1504f3db46c6e_3" -> "reset<int,_void>#shared_ptr<int>#std#(_ZNSt3__110shared_ptrIiE5resetIivEEvPT_).a1205b56a9f5cca1b1c1504f3db46c6e_2" ;
}
