add guard file n improve it