Написать класс Sausage, имитирующий киберколбасу. Киберколбаса может быть проинициализирована нулём значений (создаётся один батон с фаршем "pork!"), одним (фарш типа str) и двумя (фарш, и объём типа Fraction). Длина целого батона киберколбасы — 12 символов фарша и 2 символа оболочки. Колбаса единичного объёма — это один полный батон, более, чем единичного — это несколько батонов (последний, возможно, неполон). Неполный батон заканчивается срезом. Киберколбаса поддерживает операции умножения и деления на целое число, сложение и вычитание с другой киберколбасой (фарш результата совпадает с фаршем первого операнда), а также взятие абсолютного значения (возвращается объём). Отрицательного объёма не бывает, в этом случае он делается нулевым. Если объём киберколбасы нулевой, батон считается пустым. При выводе округлять двенадцатые доли батона в сторону ближайшего меньшего.
/------------\ |pork!pork!po| |pork!pork!po| |pork!pork!po| \------------/ /----------| |HAMHAMHAMH| |HAMHAMHAMH| |HAMHAMHAMH| \----------| /------------\/---| |SPAM.SPAM.SP||SPA| |SPAM.SPAM.SP||SPA| |SPAM.SPAM.SP||SPA| \------------/\---| /------------\/------------\/------------\/-| |pork!pork!po||pork!pork!po||pork!pork!po||p| |pork!pork!po||pork!pork!po||pork!pork!po||p| |pork!pork!po||pork!pork!po||pork!pork!po||p| \------------/\------------/\------------/\-| 37/12 /------------\/--------| |HAMHAMHAMHAM||HAMHAMHA| |HAMHAMHAMHAM||HAMHAMHA| |HAMHAMHAMHAM||HAMHAMHA| \------------/\--------| /------------\ |SPAM.SPAM.SP| |SPAM.SPAM.SP| |SPAM.SPAM.SP| \------------/ /| || || || \| False 3/64 /| || || || \| True 0