typedef struct DynamicRegion<`r1>*`r2 region_key_opt_t<`r1,`r2>;
typedef region_key_opt_t<`r1,`RC> rcregion_key_opt_t<`r1>; 

struct refcnt_dyn_reg_obj <`a::A, `r::R> {
  rcregion_key_opt_t<`r> regkey;
  `a *`r state;
};
 
struct refcnt_dyn_reg_wrapper<`a::A>{
  <`r::R>
  struct refcnt_dyn_reg_obj<`a, `r> *`H s;
};

