just realize python has static method and annotation