#186 new ImmutableSource interface