code: public static void onSaveInstanceState(Object context, Bundle outState) {
  
  		if(ProfileService.getInstance(context).isActive(context, Profile.STATE) && outState != null) {
  			
  			long millis = System.currentTimeMillis();
  		
  			if(ContextUtils.isFragment(context))
  				ContextUtils.asFragment(context).setRetainInstance(true);
  			
  			else if(ContextUtils.isSupportFragment(context)) 
  				ContextUtils.asSupportFragment(context).setRetainInstance(true);
  			
  			StateService.newInstance(ContextUtils.discover(context)).save(context, outState);
  			
  			millis = System.currentTimeMillis() - millis;
  				
  			Log.i("INSTRUMENTATION:IckleStateProfile#onSaveInstanceState", 
  				  StateUtils.class.getClass().getSimpleName() + ": " + millis + "ms");
  		}
  	}
docs: <p><b>Saves</b> instance variables annotated with {@code @Stateful}.</p>