full define and setting with permission