can do some experiments but still need improve