add ignore
try to port to python
revert port to python
add basic tests