dynamic and static