#!/usr/bin/env python

import sys
import tachyon

result = tachyon.phaserize('shoot')

if not isinstance(result, int):
    print('Returned result not an integer.')
    sys.exit(1)

if result != 1:
    print('Returned result {} is not 1.'.format(result))
    sys.exit(1)
