support dynamic layer