AS SELECT DISTINCT 
                      dbo.Programs.ProgramID, dbo.ProgramAliases.AliasName AS ProgramName, dbo.Paths.PathStr, OccurrencesStmt_1.StartRow, 
                      CASE WHEN dbo.Paths.PathID = Occurrences.PathID THEN 0 ELSE - 1 END AS IsCopy
FROM         dbo.OccurrencesStmt AS OccurrencesStmt_1 INNER JOIN
                      dbo.Paths ON OccurrencesStmt_1.PathID = dbo.Paths.PathID INNER JOIN
                      dbo.OccurrencesStmt ON OccurrencesStmt_1.OccurID <> dbo.OccurrencesStmt.OccurID AND OccurrencesStmt_1.PathID = dbo.OccurrencesStmt.PathID AND 
                      OccurrencesStmt_1.StartRow = dbo.OccurrencesStmt.StartRow AND OccurrencesStmt_1.StartCol < dbo.OccurrencesStmt.StartCol INNER JOIN
                      dbo.Programs ON OccurrencesStmt_1.ProgID = dbo.Programs.ProgramID INNER JOIN
                      dbo.Occurrences ON dbo.Programs.OccurID = dbo.Occurrences.OccurID INNER JOIN
		dbo.ProgramAliases ON dbo.ProgramAliases.ProgramId = dbo.Programs.ProgramID
			AND dbo.ProgramAliases.AliasType = 0
WHERE     (dbo.Programs.ProgramID IN (Select * from #numeric_param_temp))
	 AND (dbo.Programs.ProgramTypeID = 1)
ORDER BY dbo.ProgramAliases.AliasName, dbo.Paths.PathStr, OccurrencesStmt_1.StartRow 
                                           