logic layer