refactor bubblemouth code
refactor bubblemouth code


Former-commit-id: be3cf7a73af8da826001f1478fd092034bbd02e2 [formerly 1711f9ac71b863b89639352463a9f3c35bf83b11] [formerly 977213c544949d26a4852ae85995b6957b5bfb80 [formerly 419883ed700caabce663f4b5d7d6803f2dc8799f]] [formerly 0b0727ff048ead0c24b7ef6c71370b036e303d85 [formerly ed9a1bb209cdddc6f05e0995f4cdfeebc34fe656] [formerly 9f50992dc96a7389b1e0099956a54630ae92648d [formerly 9f50992dc96a7389b1e0099956a54630ae92648d [formerly 6109f219c7a2587ddb4f93cfccabdd1810214cde]]]]
Former-commit-id: d9cfa26a3323a5c1c02e75a578afe9858aab0c99 [formerly 60ec11249457959df889c23f9829ad03068aae11] [formerly 196ac9cd17aee775d6bf93ca09840576f45d426a [formerly 1a54740ae776dc00aa32dc095d99afb1389d2b36]]
Former-commit-id: a8ea174ada1d2568b1c7fcfb70ea80644e1080f1 [formerly cdd01339716bf34c6f2b780086dcd5450a48ef46]
Former-commit-id: 43b2c3de646238af299db1ca14ef3b30f91869c6
Former-commit-id: 260cb17fc173074aecfde42a055c3a4056460ec1
Considerit/ConsiderIt,Considerit/ConsiderIt,Considerit/ConsiderIt,Considerit/ConsiderIt