/*
 * 题目分析: 拆分、补全字符串
 * 解题思路: 读一行处理一行就行了
 * 注意事项: 
 *          1. 其实直接打印就行, 不用输出到新的字符串数组 (我就不该非得输出到数组, 导致失败了两次!!!)
 *          2. 考虑怎么处理多余的子串
 *          3. 声明数组: String strs = new Sting[10];
 *          4. 获取子串: substring(int beginIndex, int endIndex)
 * 提交失败: 
 *          1. 用例通过率80%, 报错返回非0, 原因未知, 开启练习模式提交一次!!!
 *          2. 练习模式也没有提示未通过的用例啊, 不过给出了报错的行号, 原因: 不存在多余子串时也进行补0操作,导致数组越界
 */
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNextLine()) {
            String str = sc.nextLine().trim();
            int len = str.length();
            if (str == null || len == 0) {
                continue;
            }

            int num1 = len / 8; // 满足长度等于8的子串数量
            int num2 = len % 8; // 多出的字符数量
            String[] strs = new String[num1 + (num2 > 0 ? 1 : 0)];
            for (int i = 0; i < num1; i++) {
                strs[i] = str.substring(i * 8, (i + 1) * 8);
            }

            // 想想有没有更好的补0的方法, 这里看起来太丑了!!!
            if (num2 > 0) {
                char[] chs = new char[8];
                for (int i = 0, j = num1 * 8; num2 > 0 && i < 8; i++, j++) {
                    if (j < len) {
                        chs[i] = str.charAt(j);
                    } else {
                        chs[i] = '0';
                    }
                }
                strs[num1] = new String(chs);
            }

            for (String s: strs) {
                System.out.println(s);
            }
        }
    }
}