ui_print("start......");
set_progress("1");
show_progress("1","200");
ui_print("current board ......");
ui_print(getprop("ro.product.name"));
ui_print("extract build.prop......");
package_extract_file("vendor/build.prop", "/tmp/venbuild.prop");
package_extract_file("system/build.prop", "/tmp/sysbuild.prop");
ui_print("s/w board ......");
ui_print(file_getprop("tmp/sysbuild.prop","ro.product.name"));
ui_print("persist.sys.update.checkbd ......");
ui_print(file_getprop("tmp/venbuild.prop","persist.sys.update.checkbd"));
ifelse(file_getprop("tmp/venbuild.prop","persist.sys.update.checkbd")=="true",
  ui_print("Check  board......");
	#	assert (getprop("ro.product.name") == file_getprop("tmp/sysbuild.prop","ro.product.name"));
    assert ((getprop("ro.product.name") == file_getprop("tmp/sysbuild.prop","ro.product.name"))
            || ( (getprop("ro.product.name") == "Hi3798CV200WVMINI") && (file_getprop("tmp/sysbuild.prop","ro.product.name") == "Hi3798CV200WVMINIVTE"))
            || ( (getprop("ro.product.name") == "Hi3798CV200WVMINIVTE") && (file_getprop("tmp/sysbuild.prop","ro.product.name") == "Hi3798CV200WVMINI"))   
           );
	,
	ui_print("Non Check  board......");
);
ui_print(file_getprop("tmp/venbuild.prop","persist.sys.update.checkbm"));
ifelse(file_getprop("tmp/venbuild.prop","persist.sys.update.checkbm")=="true",
  ui_print("Check  board......");
	assert (getprop("ro.buyer.model") == file_getprop("tmp/sysbuild.prop","ro.buyer.model"));
	,
	ui_print("Non Check  buyer model......");
);


ifelse(is_mounted("/data"),unmount("/data"));
mount("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/userdata", "/data");

ifelse(is_mounted("/system"),unmount("/system"));
mount("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/system", "/system");

ifelse(is_mounted("/vendor"),unmount("/vendor"));
mount("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/vendor", "/vendor");

ifelse(isexistfile("/vendor/app/cam/cam.apk") == "ok",
	ui_print("Copy cam ......");
	run_program("/sbin/busybox","cp","-ar","/vendor/app/cam","/data/tmpcam");
	,
	ui_print("Can't find cam ......");
);
ifelse(isexistfile("/system/oscam/oscam8.exe") == "ok",
	ui_print("Copy oscam ......");
	run_program("/sbin/busybox","cp","-ar","/system/oscam","/data/tmposcam");
	,
	ui_print("Can't find oscam ......");
);
ifelse(isexistfile("/vendor/app/OscamAndroid_IF/OscamAndroid_IF.apk") == "ok",
	ui_print("Copy OscamAndroid_IF ......");
	run_program("/sbin/busybox","cp","-ar","/vendor/app/OscamAndroid_IF","/data/tmpOscamAndroid_IF");	
	,
	ui_print("Can't find OscamAndroid_IF ......");
);

#ifelse(isexistfile("/data/OscamAndroid_IF.apk") == "ok",
#	ui_print("Remove data OscamAndroid_IF.apk ......");	
#	run_program("/sbin/busybox","rm","-f","/data/OscamAndroid_IF.apk");
#);

#ifelse(isexistfile("/vendor/app/OscamAndroid_IF.apk") == "ok",
#	ui_print("remove vendor OscamAndroid_IF.apk ......");	
#	run_program("/sbin/busybox","rm","-f","/vendor/app/OscamAndroid_IF.apk");
#);

ui_print("update all...");
ui_print("update fastboot......");
package_extract_file("fastboot.img", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/fastboot");
ui_print("update bootargs......");
package_extract_file("bootargs.img", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/bootargs");

ui_print("update recovery......");
package_extract_file("recovery.img", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/recovery");

#ui_print("update baseparam.....");
#package_extract_file("baseparam.img","/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/baseparam");

ui_print("format fastplay......");
format("raw", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/fastplay", "0", "fastplay");

ui_print("update logo..........");
package_extract_file("logo.img", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/logo");

ui_print("update kernel..........");
package_extract_file("boot.img", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/kernel");

ui_print("update pq_param......");
package_extract_file("pq_param.img", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/pqparam");

ui_print("update trustedcore...");
package_extract_file("trustedcore.img", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/trustedcore");

ui_print("update system........");
ifelse(is_mounted("/system"),unmount("/system"));
format("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/system", "0", "/system");
mount("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/system", "/system");
package_extract_dir("system", "/system");

#ifelse(isexistfile("/data/oscam/oscam8.exe") == "ok",
#	ui_print("Extract candy ......");	
#    package_extract_dir("candy", "/system");	
#);

ifelse(is_mounted("/eonuser"),unmount("/eonuser"));
mount("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/eonuser", "/eonuser");

set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm_recursive(0, 2000, 0755, 0755, "/system/etc");
set_perm_recursive(0, 1000, 0775, 0775, "/system/app");
set_perm_recursive(0, 1000, 0775, 0775, "/system/priv-app");

ifelse(isexistfile("/system/oscam/oscam8.exe") == "ok",
	ui_print("Updated oscam ......");
	ifelse(isexistfile("/data/tmposcam/oscam8.exe") == "ok",
		ui_print("Remove tmposcam ......");
		run_program("/sbin/busybox","rm","-rf","/data/tmposcam");
	);
	,
	ifelse(isexistfile("/data/tmposcam/oscam8.exe") == "ok",
		ui_print("Copy tmposcam ......");
		run_program("/sbin/busybox","cp","-ar","/data/tmposcam","/system/oscam");
		run_program("/sbin/busybox","rm","-rf","/data/tmposcam");
		,
		ui_print("Can't find tmposcam ......");
	);
);


ifelse(isexistfile("/system/oscam/oscam8.exe") == "ok",
	ui_print("Set oscam exe permission ......");
	set_perm(0, 2000, 0755, "/system/oscam/oscam8.exe");
);
ifelse(isexistfile("/system/oscam/oscam8.sh") == "ok",
	ui_print("Set oscam sh permission ......");
	set_perm(0, 2000, 0755, "/system/oscam/oscam8.sh");
);
ifelse(isexistfile("/system/tvheadend/tvh8.exe") == "ok",
	ui_print("Set tvh exe permission ......");
	set_perm(0, 2000, 0755, "/system/tvheadend/tvh8.exe");
);
ifelse(isexistfile("/system/tvheadend/tvh8.sh") == "ok",
	ui_print("Set tvh sh permission ......");
	set_perm(0, 2000, 0755, "/system/tvheadend/tvh8.sh");
);
ifelse(isexistfile("/system/xbin/su") == "ok",
	ui_print("Set su permission ......");
	set_perm(0, 2000, 04750, "/system/xbin/su");
);
ui_print("update vendor........");
ifelse(is_mounted("/vendor"),unmount("/vendor"));
format("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/vendor", "0", "/vendor");
mount("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/vendor", "/vendor");
package_extract_dir("vendor", "/vendor");

ifelse(isexistfile("/vendor/app/cam/cam.apk") == "ok",
    ui_print("Updated cam.apk ......");
	ifelse(isexistfile("/data/tmpcam/cam.apk") == "ok",
		ui_print("Remove tmpcam ......");
		run_program("/sbin/busybox","rm","-rf","/data/tmpcam");
		,
		ui_print("Can't find tmpcam ......");
	);
	,
	ifelse(isexistfile("/data/tmpcam/cam.apk") == "ok",
		ui_print("Copy tmpcam ......");
		run_program("/sbin/busybox","cp","-ar","/data/tmpcam","/vendor/app/cam");
		run_program("/sbin/busybox","rm","-rf","/data/tmpcam");
		,
		ui_print("Can't find tmpcam ......");
	);
);
ifelse(isexistfile("/vendor/app/OscamAndroid_IF/OscamAndroid_IF.apk") == "ok",
	ui_print("Updated OscamAndroid_IF ......");
	ifelse(isexistfile("/data/tmpOscamAndroid_IF/OscamAndroid_IF.apk") == "ok",
		ui_print("Remove tmpOscamAndroid_IF ......");
		run_program("/sbin/busybox","rm","-rf","/data/tmpOscamAndroid_IF");
	);
	,
	ifelse(isexistfile("/data/tmpOscamAndroid_IF/OscamAndroid_IF.apk") == "ok",
		ui_print("Copy tmpOscamAndroid_IF ......");
		run_program("/sbin/busybox","cp","-ar","/data/tmpOscamAndroid_IF","/vendor/app/OscamAndroid_IF");
		run_program("/sbin/busybox","rm","-rf","/data/tmpOscamAndroid_IF");
		,
		ui_print("Can't find tmpOscamAndroid_IF ......");
	);
);

set_perm_recursive(0, 2000, 0755, 0755, "/vendor/bin");
set_perm_recursive(0, 1000, 0775, 0775, "/vendor/app");

ifelse(isexistfile("/vendor/etc/init.bigfish.sh") == "ok",
	ui_print("chmod a+x init.bigfish.sh ......");	
	set_perm(0, 2000, 0755, "/vendor/etc/init.bigfish.sh");
	,
	ui_print("Can't find init.bigfish.sh......");
);

ui_print("update userdata......");
ifelse(is_mounted("/data"),unmount("/data"));
mount("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/userdata", "/data");
package_extract_dir("userdata", "/data");
run_program("/sbin/busybox","rm","-rf","/data/dalvik-cache");
#ifelse(isexistfile("/data/oscam/oscamworks.exe") == "ok",
#	ui_print("Remove data oscamworks.exe ......");
#	run_program("/sbin/busybox","rm","-f","/data/oscam/oscamworks.exe");
#	,
#	ui_print("Can't find data oscam ......");
#);

ifelse(isexistfile("/data/init.ghost.linux") == "ok",
	ui_print("chmod a+x data/init.ghost.linux ......");	
	set_perm(0, 2000, 0755, "/data/init.ghost.linux");
	,
	ui_print("Can't find /data/init.ghost.linux......");
);

#ui_print("update eonuser......");
ifelse(is_mounted("/eonuser"),unmount("/eonuser"));
format("ext4", "EMMCPRIVATE", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/eonuser", "0", "/eonuser");
#mount("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/eonuser", "/eonuser");
#ifelse(is_mounted("/eonuser"),
#	ifelse(isexistfile("/eonuser/persist.sys.factory.finished") == "ok",
#		ui_print("remove persist.sys.factory.finished ......");
#		delete("/eonuser/persist.sys.factory.finished");
#	);
#	unmount("/eonuser")
#);

ifelse(isexistupdatepackage("/cache"),
    ui_print("update.zip in cache......");
    delete_recursive("/cache"),
    ui_print("format cache......");
    unmount("/cache");
    format("ext4", "EMMC", "/dev/block/platform/soc/f9830000.himciv200.MMC/by-name/cache", "0", "/cache");
);symlink("/vendor", "/system/vendor");
symlink("Roboto-Bold.ttf", "/system/fonts/DroidSans-Bold.ttf");
symlink("Roboto-Regular.ttf", "/system/fonts/DroidSans.ttf");
symlink("/system/lib/libdefcontainer_jni.so", "/system/priv-app/DefaultContainerService/lib/arm/libdefcontainer_jni.so");
symlink("toybox", "/system/bin/killall");
symlink("toybox", "/system/bin/sendevent");
symlink("toybox", "/system/bin/mkdir");
symlink("toybox", "/system/bin/sha512sum");
symlink("toybox", "/system/bin/od");
symlink("toybox", "/system/bin/load_policy");
symlink("toybox", "/system/bin/uptime");
symlink("toybox", "/system/bin/cpio");
symlink("toybox", "/system/bin/start");
symlink("toybox", "/system/bin/expr");
symlink("toybox", "/system/bin/time");
symlink("toybox", "/system/bin/swapon");
symlink("toybox", "/system/bin/kill");
symlink("toybox", "/system/bin/tr");
symlink("toybox", "/system/bin/iorenice");
symlink("toybox", "/system/bin/sleep");
symlink("toybox", "/system/bin/usleep");
symlink("toybox", "/system/bin/dmesg");
symlink("bzip2", "/system/bin/bunzip2");
symlink("toybox", "/system/bin/paste");
symlink("toybox", "/system/bin/sed");
symlink("toybox", "/system/bin/netstat");
symlink("toybox", "/system/bin/log");
symlink("toybox", "/system/bin/renice");
symlink("toybox", "/system/bin/stat");
symlink("toybox", "/system/bin/realpath");
symlink("toybox", "/system/bin/echo");
symlink("toybox", "/system/bin/mktemp");
symlink("toybox", "/system/bin/sha256sum");
symlink("toybox", "/system/bin/sha224sum");
symlink("grep", "/system/bin/egrep");
symlink("toybox", "/system/bin/getprop");
symlink("toybox", "/system/bin/mkswap");
symlink("toybox", "/system/bin/xxd");
symlink("toybox", "/system/bin/rmdir");
symlink("toybox", "/system/bin/vmstat");
symlink("toybox", "/system/bin/printf");
symlink("toybox", "/system/bin/mv");
symlink("toybox", "/system/bin/setenforce");
symlink("bzip2", "/system/bin/bzcat");
symlink("toybox", "/system/bin/mountpoint");
symlink("toybox", "/system/bin/umount");
symlink("toybox", "/system/bin/groups");
symlink("app_process32", "/system/bin/app_process");
symlink("toybox", "/system/bin/modprobe");
symlink("toybox", "/system/bin/cmp");
symlink("toybox", "/system/bin/uniq");
symlink("toybox", "/system/bin/cat");
symlink("toybox", "/system/bin/tee");
symlink("toybox", "/system/bin/lsof");
symlink("toybox", "/system/bin/taskset");
symlink("toybox", "/system/bin/free");
symlink("toybox", "/system/bin/printenv");
symlink("toybox", "/system/bin/sha384sum");
symlink("toolbox", "/system/bin/newfs_msdos");
symlink("toybox", "/system/bin/flock");
symlink("toybox", "/system/bin/whoami");
symlink("toybox", "/system/bin/truncate");
symlink("toybox", "/system/bin/basename");
symlink("toybox", "/system/bin/tail");
symlink("toybox", "/system/bin/sha1sum");
symlink("toybox", "/system/bin/base64");
symlink("toybox", "/system/bin/restorecon");
symlink("toybox", "/system/bin/ulimit");
symlink("toybox", "/system/bin/cal");
symlink("toybox", "/system/bin/false");
symlink("toybox", "/system/bin/du");
symlink("toybox", "/system/bin/sysctl");
symlink("toybox", "/system/bin/sort");
symlink("toybox", "/system/bin/ionice");
symlink("toybox", "/system/bin/swapoff");
symlink("toolbox", "/system/bin/getevent");
symlink("toybox", "/system/bin/ifconfig");
symlink("toybox", "/system/bin/id");
symlink("toybox", "/system/bin/pmap");
symlink("toybox", "/system/bin/lsmod");
symlink("toybox", "/system/bin/chgrp");
symlink("toybox", "/system/bin/wc");
symlink("toybox", "/system/bin/more");
symlink("linker", "/system/bin/linker_asan");
symlink("toybox", "/system/bin/logname");
symlink("toybox", "/system/bin/tar");
symlink("toybox", "/system/bin/nl");
symlink("toybox", "/system/bin/losetup");
symlink("toybox", "/system/bin/dos2unix");
symlink("toybox", "/system/bin/rmmod");
symlink("toybox", "/system/bin/rm");
symlink("toybox", "/system/bin/mount");
symlink("toybox", "/system/bin/pidof");
symlink("toybox", "/system/bin/expand");
symlink("toybox", "/system/bin/chmod");
symlink("toybox", "/system/bin/split");
symlink("toybox", "/system/bin/inotifyd");
symlink("toolbox", "/system/bin/dd");
symlink("toybox", "/system/bin/xargs");
symlink("toybox", "/system/bin/which");
symlink("ip6tables", "/system/bin/ip6tables-save");
symlink("toybox", "/system/bin/mknod");
symlink("toybox", "/system/bin/top");
symlink("iptables", "/system/bin/iptables-save");
symlink("toybox", "/system/bin/hostname");
symlink("toybox", "/system/bin/pkill");
symlink("toybox", "/system/bin/ls");
symlink("toybox", "/system/bin/pwd");
symlink("toybox", "/system/bin/chcon");
symlink("toybox", "/system/bin/head");
symlink("toybox", "/system/bin/cksum");
symlink("toybox", "/system/bin/microcom");
symlink("toybox", "/system/bin/uuencode");
symlink("toybox", "/system/bin/date");
symlink("toybox", "/system/bin/stop");
symlink("toybox", "/system/bin/sync");
symlink("toybox", "/system/bin/acpi");
symlink("toybox", "/system/bin/strings");
symlink("toybox", "/system/bin/dirname");
symlink("toybox", "/system/bin/unix2dos");
symlink("toybox", "/system/bin/comm");
symlink("toybox", "/system/bin/yes");
symlink("toybox", "/system/bin/clear");
symlink("toybox", "/system/bin/nice");
symlink("dalvikvm32", "/system/bin/dalvikvm");
symlink("toybox", "/system/bin/tty");
symlink("toybox", "/system/bin/pgrep");
symlink("toybox", "/system/bin/blockdev");
symlink("toybox", "/system/bin/md5sum");
symlink("toybox", "/system/bin/runcon");
symlink("toybox", "/system/bin/true");
symlink("toybox", "/system/bin/patch");
symlink("toybox", "/system/bin/chrt");
symlink("toybox", "/system/bin/uname");
symlink("toybox", "/system/bin/fallocate");
symlink("toybox", "/system/bin/hwclock");
symlink("toybox", "/system/bin/nohup");
symlink("toybox", "/system/bin/chown");
symlink("toybox", "/system/bin/setsid");
symlink("toybox", "/system/bin/lsusb");
symlink("toybox", "/system/bin/modinfo");
symlink("grep", "/system/bin/fgrep");
symlink("toybox", "/system/bin/getenforce");
symlink("toybox", "/system/bin/file");
symlink("toybox", "/system/bin/uudecode");
symlink("toybox", "/system/bin/insmod");
symlink("toybox", "/system/bin/cut");
symlink("toybox", "/system/bin/chroot");
symlink("toybox", "/system/bin/tac");
symlink("toybox", "/system/bin/seq");
symlink("toybox", "/system/bin/ln");
symlink("toybox", "/system/bin/env");
symlink("toybox", "/system/bin/readlink");
symlink("toybox", "/system/bin/find");
symlink("iptables", "/system/bin/iptables-restore");
symlink("ip6tables", "/system/bin/ip6tables-restore");
symlink("toybox", "/system/bin/ps");
symlink("toybox", "/system/bin/touch");
symlink("toybox", "/system/bin/setprop");
symlink("toybox", "/system/bin/cp");
symlink("toybox", "/system/bin/timeout");
symlink("toybox", "/system/bin/df");
symlink("/system/lib/libandroid_runtime.so", "/system/app/HiVideoPlayer/lib/arm/libandroid_runtime.so");
symlink("/system/lib/libwnndict.so", "/system/app/OpenWnn/lib/arm/libwnndict.so");
symlink("/system/lib/libWnnEngDic.so", "/system/app/OpenWnn/lib/arm/libWnnEngDic.so");
symlink("/system/lib/libWnnJpnDic.so", "/system/app/OpenWnn/lib/arm/libWnnJpnDic.so");
symlink("/system/lib/libandroid_runtime.so", "/system/app/HiMusic/lib/arm/libandroid_runtime.so");
symlink("/system/lib/libjni_pacprocessor.so", "/system/app/PacProcessor/lib/arm/libjni_pacprocessor.so");
symlink("/system/lib/libgallerycore.so", "/system/app/HiGalleryL/lib/arm/libgallerycore.so");
symlink("/system/lib/liboffscreenobject.so", "/system/app/HiGalleryL/lib/arm/liboffscreenobject.so");
symlink("/system/lib/libbluetooth_jni.so", "/system/app/Bluetooth/lib/arm/libbluetooth_jni.so");
symlink("/system/lib/libandroid_runtime.so", "/system/app/HiFileManager/lib/arm/libandroid_runtime.so");
symlink("toybox_vendor", "/vendor/bin/killall");
symlink("toybox_vendor", "/vendor/bin/sendevent");
symlink("toybox_vendor", "/vendor/bin/mkdir");
symlink("toybox_vendor", "/vendor/bin/sha512sum");
symlink("toybox_vendor", "/vendor/bin/od");
symlink("toybox_vendor", "/vendor/bin/load_policy");
symlink("toybox_vendor", "/vendor/bin/uptime");
symlink("toybox_vendor", "/vendor/bin/cpio");
symlink("toybox_vendor", "/vendor/bin/start");
symlink("toybox_vendor", "/vendor/bin/expr");
symlink("toybox_vendor", "/vendor/bin/time");
symlink("toybox_vendor", "/vendor/bin/swapon");
symlink("toybox_vendor", "/vendor/bin/kill");
symlink("toybox_vendor", "/vendor/bin/tr");
symlink("toybox_vendor", "/vendor/bin/iorenice");
symlink("toybox_vendor", "/vendor/bin/sleep");
symlink("toybox_vendor", "/vendor/bin/usleep");
symlink("toybox_vendor", "/vendor/bin/dmesg");
symlink("toybox_vendor", "/vendor/bin/paste");
symlink("toybox_vendor", "/vendor/bin/sed");
symlink("toybox_vendor", "/vendor/bin/netstat");
symlink("toybox_vendor", "/vendor/bin/log");
symlink("toybox_vendor", "/vendor/bin/renice");
symlink("toybox_vendor", "/vendor/bin/stat");
symlink("toybox_vendor", "/vendor/bin/realpath");
symlink("toybox_vendor", "/vendor/bin/echo");
symlink("toybox_vendor", "/vendor/bin/mktemp");
symlink("toybox_vendor", "/vendor/bin/sha256sum");
symlink("toybox_vendor", "/vendor/bin/sha224sum");
symlink("toybox_vendor", "/vendor/bin/getprop");
symlink("toybox_vendor", "/vendor/bin/mkswap");
symlink("toybox_vendor", "/vendor/bin/xxd");
symlink("toybox_vendor", "/vendor/bin/rmdir");
symlink("toybox_vendor", "/vendor/bin/vmstat");
symlink("toybox_vendor", "/vendor/bin/printf");
symlink("toybox_vendor", "/vendor/bin/mv");
symlink("toybox_vendor", "/vendor/bin/setenforce");
symlink("toybox_vendor", "/vendor/bin/mountpoint");
symlink("toybox_vendor", "/vendor/bin/umount");
symlink("toybox_vendor", "/vendor/bin/groups");
symlink("toybox_vendor", "/vendor/bin/modprobe");
symlink("toybox_vendor", "/vendor/bin/cmp");
symlink("toybox_vendor", "/vendor/bin/uniq");
symlink("toybox_vendor", "/vendor/bin/cat");
symlink("toybox_vendor", "/vendor/bin/tee");
symlink("toybox_vendor", "/vendor/bin/lsof");
symlink("toybox_vendor", "/vendor/bin/taskset");
symlink("toybox_vendor", "/vendor/bin/free");
symlink("toybox_vendor", "/vendor/bin/printenv");
symlink("toybox_vendor", "/vendor/bin/sha384sum");
symlink("toybox_vendor", "/vendor/bin/flock");
symlink("toybox_vendor", "/vendor/bin/whoami");
symlink("toybox_vendor", "/vendor/bin/truncate");
symlink("toybox_vendor", "/vendor/bin/basename");
symlink("toybox_vendor", "/vendor/bin/tail");
symlink("toybox_vendor", "/vendor/bin/sha1sum");
symlink("toybox_vendor", "/vendor/bin/base64");
symlink("toybox_vendor", "/vendor/bin/restorecon");
symlink("toybox_vendor", "/vendor/bin/ulimit");
symlink("toybox_vendor", "/vendor/bin/cal");
symlink("toybox_vendor", "/vendor/bin/false");
symlink("toybox_vendor", "/vendor/bin/du");
symlink("toybox_vendor", "/vendor/bin/sysctl");
symlink("toybox_vendor", "/vendor/bin/sort");
symlink("toybox_vendor", "/vendor/bin/ionice");
symlink("toybox_vendor", "/vendor/bin/swapoff");
symlink("toybox_vendor", "/vendor/bin/ifconfig");
symlink("toybox_vendor", "/vendor/bin/id");
symlink("toybox_vendor", "/vendor/bin/pmap");
symlink("toybox_vendor", "/vendor/bin/lsmod");
symlink("toybox_vendor", "/vendor/bin/chgrp");
symlink("toybox_vendor", "/vendor/bin/wc");
symlink("toybox_vendor", "/vendor/bin/more");
symlink("toybox_vendor", "/vendor/bin/logname");
symlink("toybox_vendor", "/vendor/bin/tar");
symlink("toybox_vendor", "/vendor/bin/nl");
symlink("toybox_vendor", "/vendor/bin/losetup");
symlink("toybox_vendor", "/vendor/bin/dos2unix");
symlink("toybox_vendor", "/vendor/bin/rmmod");
symlink("toybox_vendor", "/vendor/bin/rm");
symlink("toybox_vendor", "/vendor/bin/mount");
symlink("toybox_vendor", "/vendor/bin/pidof");
symlink("toybox_vendor", "/vendor/bin/expand");
symlink("toybox_vendor", "/vendor/bin/chmod");
symlink("toybox_vendor", "/vendor/bin/split");
symlink("toybox_vendor", "/vendor/bin/inotifyd");
symlink("toybox_vendor", "/vendor/bin/xargs");
symlink("toybox_vendor", "/vendor/bin/which");
symlink("toybox_vendor", "/vendor/bin/mknod");
symlink("toybox_vendor", "/vendor/bin/top");
symlink("toybox_vendor", "/vendor/bin/hostname");
symlink("toybox_vendor", "/vendor/bin/pkill");
symlink("toybox_vendor", "/vendor/bin/ls");
symlink("toybox_vendor", "/vendor/bin/pwd");
symlink("toybox_vendor", "/vendor/bin/chcon");
symlink("toybox_vendor", "/vendor/bin/head");
symlink("toybox_vendor", "/vendor/bin/cksum");
symlink("toybox_vendor", "/vendor/bin/microcom");
symlink("toybox_vendor", "/vendor/bin/uuencode");
symlink("toybox_vendor", "/vendor/bin/date");
symlink("toybox_vendor", "/vendor/bin/stop");
symlink("toybox_vendor", "/vendor/bin/sync");
symlink("toybox_vendor", "/vendor/bin/acpi");
symlink("toybox_vendor", "/vendor/bin/strings");
symlink("toybox_vendor", "/vendor/bin/dirname");
symlink("toybox_vendor", "/vendor/bin/unix2dos");
symlink("toybox_vendor", "/vendor/bin/comm");
symlink("toybox_vendor", "/vendor/bin/yes");
symlink("toybox_vendor", "/vendor/bin/clear");
symlink("toybox_vendor", "/vendor/bin/nice");
symlink("toybox_vendor", "/vendor/bin/tty");
symlink("toybox_vendor", "/vendor/bin/pgrep");
symlink("toybox_vendor", "/vendor/bin/blockdev");
symlink("toybox_vendor", "/vendor/bin/md5sum");
symlink("toybox_vendor", "/vendor/bin/runcon");
symlink("toybox_vendor", "/vendor/bin/true");
symlink("toybox_vendor", "/vendor/bin/patch");
symlink("toybox_vendor", "/vendor/bin/chrt");
symlink("toybox_vendor", "/vendor/bin/uname");
symlink("toybox_vendor", "/vendor/bin/fallocate");
symlink("toybox_vendor", "/vendor/bin/hwclock");
symlink("toybox_vendor", "/vendor/bin/nohup");
symlink("toybox_vendor", "/vendor/bin/chown");
symlink("toybox_vendor", "/vendor/bin/setsid");
symlink("toybox_vendor", "/vendor/bin/lsusb");
symlink("toybox_vendor", "/vendor/bin/modinfo");
symlink("toybox_vendor", "/vendor/bin/getenforce");
symlink("toybox_vendor", "/vendor/bin/file");
symlink("toybox_vendor", "/vendor/bin/uudecode");
symlink("toybox_vendor", "/vendor/bin/insmod");
symlink("toybox_vendor", "/vendor/bin/cut");
symlink("toybox_vendor", "/vendor/bin/chroot");
symlink("toybox_vendor", "/vendor/bin/tac");
symlink("toybox_vendor", "/vendor/bin/seq");
symlink("toybox_vendor", "/vendor/bin/ln");
symlink("toybox_vendor", "/vendor/bin/env");
symlink("toybox_vendor", "/vendor/bin/readlink");
symlink("toybox_vendor", "/vendor/bin/find");
symlink("toybox_vendor", "/vendor/bin/ps");
symlink("toybox_vendor", "/vendor/bin/touch");
symlink("toybox_vendor", "/vendor/bin/setprop");
symlink("toybox_vendor", "/vendor/bin/cp");
symlink("toybox_vendor", "/vendor/bin/timeout");
symlink("toybox_vendor", "/vendor/bin/df");
ui_print("metadata system......");
package_extract_file("META/filesystem_config.txt","/tmp/filesystem_config.txt");
set_metadata_default("/tmp/filesystem_config.txt");
ui_print("delete /tmp/filesystem_config.txt......");
delete("/tmp/filesystem_config.txt");
ui_print("set system symlink ok.....");
unmount("/system");
ui_print("set vendor symlink ok.....");
unmount("/vendor");
ui_print("update ok.....");
