better readonly handle plugin