add relative and self