Дублирование кода является одним из самых проблемных препятствий в обслуживании программного обеспечения. Обнаружение клонов должно быть принято в качестве упреждающей меры при разработке программного обеспечения, чтобы избежать проблем, с которыми сталкиваются клоны на более поздних этапах, таких как тестирование и сопровождение.Основным направлением этой работы является обнаружение дублирования в исходном коде, что является одной из основных причин плохой структуры в реальных программах. Новаторский подход к обнаружению клонов заключается в обнаружении практически отсутствующих клонов на уровне файлов в качестве подспорья при сопровождении программного обеспечения. Ближайшие клоны - это те, которые не совсем похожи друг на друга и могут потворствовать изменению имен переменных, литералов, пробельных символов и т.д., но с точки зрения функциональности они дают аналогичный результат. Наша работа основана на метриках и подходах, основанных на синтаксисе и абстрактно