For the following code, how do I specify which phone number type (HomePhone or WorkPhone) the function storePhone is storing the Int as? 

```
type HomePhone = Int
type WorkPhone = Int

data Phone = HomePhone
           | WorkPhone

storePhone :: int -> Phone 
storePhone num = num

main :: IO ()
main = print $ storePhone 12345678

```

This question was a simplified version of the question I have for a side project I'm doing.
I have a module that parses a file to the relevant data type (aka like in sample the Phone type). All the data is Double but have different semantic meaning. In another module, I have methods that use the data. Each method takes different permutations of data types(aka HomePhone, WorkPhone) as arguments. I could have made HomePhone and WorkPhone data type or even newtype, but it would have made the methods that used the data look messy with lots of pattern matching and stuff. So was just wondering if I could simplify the data type(aka Phone) so that it was a bit more elegant and still type safe. Cheers!
I guess I should do the following?

```
type HomePhone = Int
type WorkPhone = Int

data Phone = HomePhone HomePhone 
           | WorkPhone WorkPhone 

```