updated with ugly script